В настоящее время я пытаюсь использовать задачу .net для запуска длинного метода.Мне нужно иметь возможность вернуть данные из задачи.Я хотел бы вызывать этот метод несколько раз каждый раз, когда запускаю его в новой задаче.Однако возврат данных с использованием свойства Task.Result заставляет каждую задачу ждать завершения.
Например, на данный момент, если вы делаете что-то вроде этого:
public void RunTask()
{
var task = Task.Factory.StartNew(() =>
{
return LongMethod()
});
Console.WriteLine(task.Result);
}
и вызываете его несколько раз, каждый раз, занимая разное время, он ожидает завершения каждой Задачи, прежде чем выполнитьследующий.
Можно ли вызывать мой метод RunTask несколько раз, каждый раз возвращая результат, не дожидаясь завершения каждой задачи по порядку?