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

Sea*_*ley 5 .net .net-4.0 task-parallel-library

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

哪里ContinueWith相当于或过载的ForEach这需要另一个动作/任务就完成运行?我是否坚持轮询ParallelLoopResult.IsCompleted值,直到它回来真实?

ContinueWhenAll方法总是期望的任务的阵列.我是否应该将对象集合投射到每个新任务中?然后,我将如何同时并行地启动一系列任务?

这个问题是类似的,但我担心的是旧的3.5 TPL扩展.如果需要,我愿意接受任务并行库之外的解决方案.

Jon*_*eet 9

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