Task.Factory.StartNew с асинхронной лямбдой и Task.WaitAll
Я пытаюсь использоватьTask.WaitAll
в списке задач. Дело в том, что задачи - это асинхронная лямбда, которая ломаетTasks.WaitAll
как это никогда не ждет.
Вот пример блока кода:
List<Task> tasks = new List<Task>();
tasks.Add(Task.Factory.StartNew(async () =>
{
using (dbContext = new DatabaseContext())
{
var records = await dbContext.Where(r => r.Id = 100).ToListAsync();
//do long cpu process here...
}
}
Task.WaitAll(tasks);
//do more stuff here
Это не ждет из-за асинхронной лямбды. Так как же мне ожидать операций ввода-вывода в моей лямбде?