Метод FromResult
Task.FromResult возвращает
Task<T> в состоянии
RanToCompletion. await
сразу даёт значение. Сбой имитируют
через
FromException,
отмену -
FromCanceled.
Синтаксис
Task<int> task = Task.FromResult(12345);
Пример
Давайте заберём число через await:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
int res = await Task.FromResult(12345);
Console.WriteLine(res);
}
}
Результат выполнения кода:
12345
Пример
Давайте прочитаем Result
без await:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
var task = Task.FromResult(12345);
await task;
int res = task.Result;
Console.WriteLine(res);
}
}
Результат выполнения кода:
12345
Пример
Давайте вернём строку:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
string res = await Task.FromResult("abcde");
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Смотрите также
-
метод
FromException,
задача со сбоем -
метод
WhenAll,
несколькоFromResult -
свойство
CompletedTask,
успех без значения -
Task,
класс, где объявлен метод