开发者

How do I follow-up a Parallel.ForEach on completion?

开发者 https://www.devze.com 2023-04-10 09:49 出处:网络
I want to take a set of objects and run a routine on all of them. The order doesn\'t matter and they are each independent operations, so I thought I would call Parallel.ForEach on the collection. But

I want to take a set of objects and run a routine on all of them. The order doesn't matter and they are each independent operations, so I thought I would call Parallel.ForEach on the collection. But I want to follow-up the whole thing once complete.

Where is the ContinueWith equivalent or an overload of ForEach that takes another actio开发者_运维百科n/Task to run on completion? Am I stuck polling the ParallelLoopResult.IsCompleted value until it comes back true?

The ContinueWhenAll method always expects an array of Tasks. Should I instead project the set of objects into new Tasks for each? How would I then start an array of Tasks all at once and in parallel?

This question is similar, but concerns the older 3.5 TPL Extensions I believe. I'm open to solutions outside of the Task Parallel Library if need be.


Parallel.ForEach blocks until it's finished, so you can just do whatever you need to after the method call.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号