.net - 如何在完成后跟进 Parallel.ForEach?

标签 .net .net-4.0 task-parallel-library

我想获取一组对象并在所有对象上运行例程。顺序无关紧要,它们都是独立的操作,所以我想我会调用Parallel . ForEach在集合上。但我想在完成后跟进整个事情。

ContinueWith在哪里等效或过载 ForEach需要另一个操作/任务才能在完成时运行?我是否坚持轮询 ParallelLoopResult . IsCompleted值直到它恢复为真?

ContinueWhenAll方法总是需要一组任务。我应该将这组对象投影到每个对象的新任务中吗?我将如何同时并行启动一系列任务?

This question是相似的,但涉及我相信的较旧的 3.5 TPL 扩展。如果需要,我对任务并行库之外的解决方案持开放态度。

最佳答案

Parallel.ForEach阻塞直到它完成,所以你可以在方法调用后做任何你需要的事情。

关于.net - 如何在完成后跟进 Parallel.ForEach?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7652397/

相关文章:

c# - 将 YYYYMMDD 字符串日期转换为日期时间值

c# - C#Dictionary.ContainsKey()始终返回false

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

c# - 数据表的实体列表

task-parallel-library - I/O 性能 - 异步 vs TPL vs Dataflow vs RX

c# - 线程和SOLID原理

.net - 如何克服对 ASP.Net MVC 标记中的 <% %> 的恐惧?

.net - 文本框样式

c# - 使用 SSH.NET 和 C# 复制或移动远程文件

.net-4.0 - .NET Framework 4.0 System.IO 引用缺少路径类