Завдання є об'єкт, який представляє певну роботу, яку слід виконати. Завдання може повідомити вам, чи виконано роботу, і якщо операція повертає результат, завдання дає вам результат.7 червня 2023 р.
У C# це завдання абстракція вищого рівня для асинхронного запуску коду. Завдання позначає одиницю роботи, яку потрібно виконати асинхронно, і воно може повертати або не повертати значення. Завдання зазвичай створюють за допомогою класу Task Factory, який надає кілька методів для створення та виконання завдань.
Якщо ви бажаєте заблокувати взаємодію користувача або ігнорувати інші операції, краще використовувати Task. Тут завдання t1 запускає тестовий метод і чекає, поки тестовий метод завершить виконання завдання. Він блокує всі інші операції.
Хоча і завдання, і потоки являють собою одиниці роботи, вони відрізняються кількома ключовими аспектами: Модель потоків: Потоками керує операційна система, а завданнями – середовище виконання. Керування ресурсами: потоки вимагають явного керування ресурсами, тоді як завданнями керує середовище виконання.
Ось саме таке Завдання. Запуск у C# робить. Це метод, який дозволяє нам запускати завдання в окремому потоці з ThreadPool, підвищуючи продуктивність і швидкість реагування ваших програм.
Завдання є ядром асинхронного програмування за допомогою моделі асинхронного програмування завдань (TAP). Завдання представляє одночасну операцію, тобто фрагмент коду, який може виконуватися одночасно з іншим кодом. Одночасні операції складають асинхронне та паралельне програмування.