Ввод Task В .NET Framework 4.0 появился тип System.Threading.Tasks.Task. По своей сути, a Task - это просто структура данных, которая представляет собой конечное завершение некоторой асинхронной операции (другие фреймворки называют подобный тип ”promise" или “future”). A Task создается для представления некоторой операции, и затем, когда операция, которую он логически представляет, завершается, результаты сохраняются в нем Task. Достаточно просто. Но ключевая функция, которую предоставляет Task,...
ValueTasks Task по сей день продолжает оставаться рабочей лошадкой асинхронности в .NET, при этом новые методы открываются в каждом выпуске и регулярно во всей экосистеме, которые возвращают Task-и Task<TResult>. Однако Task это класс, а это означает, что его создание требует выделения памяти. По большей части одно дополнительное выделение для долгоживущей асинхронной операции — это гроши, которые не окажут существенного влияния на производительность всех операций, кроме наиболее чувствительных к производительности...