Я впроваджую метод, Task<Result> StartSomeTask()
і випадково знаю результат вже до того, як метод буде викликаний. Як створити завдання <T> , яке вже виконано?
Це те, що я зараз роблю:
private readonly Result theResult = new Result();
public override Task<Result> StartSomeTask()
{
var task = new Task<Result>(() => theResult);
task.RunSynchronously(CurrentThreadTaskScheduler.CurrentThread);
return task;
}
Чи є краще рішення?
ValueTask
виконані завдання (тобто для значень, які ви вже маєте, щоб код був по суті синхронним), що заощадить вам розподіл.