Thread, task, примеры использования?



Класс Thread создает и контролирует поток. На входе указывается метод, который будет выполняться в потоке.

Класс Task позволяет запускать отдельную продолжительную задачу. Она запускается асинхронно в одном из потоков из пула потоков, но ее можно запускать и синхронно.



var t = new Thread(() => Thread.Sleep(1000));

t.IsBackground = false; //основной поток, система сама ожидает его завершение

t.Start();

Task.Run(() => Task.Delay(1000)).Wait(); //с использованием TPL