Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpAsTs 346 of 509 menu
◀ ▶

TaskCompletionSource в C#

Класс TaskCompletionSource позволяет вручную переводить Task в завершённое состояние.

Так удобно обернуть чужой обратный вызов или событие: снаружи это обычная задача, которую можно ожидать.

Завершим задачу сами вызовом SetResult. await отдаст текст только после этого вызова:

TaskCompletionSource<string> tcs = new(); tcs.SetResult("ok"); Console.WriteLine(await tcs.Task); // выведет "ok"

Создайте задачу, которую завершаете сами числом 11, и выведите его квадрат.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить