Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Если получилиValueTaskилиValueTask<TResult>, но необходимо выполнить одну из этих трёх операций, вы можете использовать.AsTask(), получитьTask/Task<TResult>и после этого работать с полученным объектом. После этого вы больше не сможете использовать тотValueTask/ValueTask<TResult>.
Ещё есть метод Preserve(), который возвращает все еще ValueTask/ValueTask<TResult>, но уже пригодный для повторного либо параллельного ожидания.
Почему, зачем и когда нужно использовать ValueTask