Parallel.ForEach循环是否可能按顺序处理我的所有集合

时间:2015-10-12 05:08:51

标签: c# task-parallel-library

我正在使用<head>和我的收藏品,我看到这个过程是我的收藏中的一些任意或者可能将我的收藏分成pices所以Parallel.ForEach Loop Loop是否有可能处理我的所有收藏订单?

修改

Parallel.ForEach

1 个答案:

答案 0 :(得分:1)

Parallel.ForEach可以并行工作。如果你的集合有非常大的逻辑需要外部资源,那么它只会以随机顺序工作,因为它不会等待一次迭代才能完成。如果您想按顺序处理集合,那么Paraller.ForEach是个坏主意。使用foreach

其中一个解决方案是将MaxDegreeOfParallelism类的ParallelOptions属性设置为1。 喜欢

Parallel.For(0, 1000, new ParallelOptions { MaxDegreeOfParallelism = 1 },
  i =>
  {

  });