IEnumerable<Task<Request>> requestTasks = CreateRequestTasks();
Task<Trace> traceTask = CreateTraceTask();
var tasks = new List<Task>();
tasks.AddRange(requestTasks);
tasks.Add(traceTask);
await Task.WhenAll(tasks);
如何从
requestTasks
集合中获得结果? 最佳答案
如何从requestTasks集合中获取结果?
将其保存为单独的(经过修饰的)集合:
List<Task<Request>> requestTasks = CreateRequestTasks().ToList();
...
await Task.WhenAll(tasks);
var results = await Task.WhenAll(requestTasks);
请注意,第二个
await Task.WhenAll
实际上不会执行任何“异步等待”,因为所有这些任务已经完成。