I want to collect/run tasks, and then do Task.WhenAll on them.
var tasks = new List<Task>();
foreach (var thing in things) {
tasks.Add(Task.Run(async () => {
// async stuff using thing
}));
}
var stuffs = await Task.WhenAll(tasks);
Is it correct to use Task.Run here or should I do
tasks.Add(new Func<Task>(async () => {async stuff})());
Or something else entirely?