91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

如何在parallel.foreach中使用 await

小樊
103
2024-07-01 16:09:38
欄目: 編程語言

在Parallel.ForEach中使用await并不是一個好的選擇,因為Parallel.ForEach是用于并行執行多個任務的,而await是用于等待單個任務完成的。如果在Parallel.ForEach中使用await,會導致整個循環變成同步執行,失去了并行執行的效果。

如果需要在Parallel.ForEach中等待每個任務完成,可以使用Task.WhenAll方法來等待所有任務完成,示例如下:

List<Task> tasks = new List<Task>();

Parallel.ForEach(items, item =>
{
    Task task = Task.Run(async () =>
    {
        // 執行異步操作
        await DoSomethingAsync(item);
    });

    tasks.Add(task);
});

await Task.WhenAll(tasks);

在上面的示例中,我們首先創建一個包含所有任務的List,然后在Parallel.ForEach中執行異步操作,并將每個任務添加到List中。最后,使用Task.WhenAll方法等待所有任務完成。這樣就能夠在并行執行異步操作的同時等待所有任務完成。

0
惠东县| 宁强县| 融水| 永德县| 图木舒克市| 龙口市| 信阳市| 沂源县| 红桥区| 乐陵市| 阿荣旗| 台北市| 隆昌县| 灯塔市| 康马县| 东台市| 且末县| 榆社县| 正阳县| 泸溪县| 乌什县| 镇宁| 临汾市| 岳西县| 南宁市| 长寿区| 佛山市| 罗甸县| 灵寿县| 天镇县| 曲松县| 灵武市| 百色市| 漠河县| 乌兰浩特市| 温州市| 二连浩特市| 晋州市| 平果县| 高邮市| 射洪县|