【发布时间】:2017-10-30 11:12:39
【问题描述】:
我有一个在 foreach 中更新的公共变量,它是一个计数器,所以我想在并行 foreach 中分配下一个计数器。
我有类似的东西:
int myCommonCounter = 5;
Parallel.Foreach(myList, (iterator, state) =>
{
if(iterator.MyProperty == X)
{
iterator.Position = miCommonCounter;
miCommonCounter = miCommonCunter + 1;
}
});
我想避免属性 iterator.Position 中的空白并避免重复。
我看到了一个对部分结果求和的例子,for example in this documentation,但这并不是我需要的那种情况。
所以我想知道当我在并行 foreach 中更新时是否有更新计数器以避免出现间隙和重复。
谢谢。
【问题讨论】:
标签: c# task-parallel-library parallel.foreach