gpt4 book ai didi

c# - 如何使用异步方法正确编写 Parallel.For

转载 作者:IT王子 更新时间:2023-10-29 04:47:42 29 4
gpt4 key购买 nike

我将如何构造下面的代码以便调用异步方法?

Parallel.For(0, elevations.Count(), delegate(int i)
{
allSheets.AddRange(await BuildSheetsAsync(userID, elevations[i], includeLabels));
});

最佳答案

Parallel.For() 不适用于 async 方法。如果您不需要限制并行度(即您可以同时执行所有任务),您可以简单地启动所有 Task 然后等待它们完成:

var tasks = Enumerable.Range(0, elevations.Count())
.Select(i => BuildSheetsAsync(userID, elevations[i], includeLabels));
List<Bitmap> allSheets = (await Task.WhenAll(tasks)).SelectMany(x => x).ToList();

关于c# - 如何使用异步方法正确编写 Parallel.For,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19284202/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com