我有一个正在并行化的foreach
循环,我注意到了一些奇怪的事情。代码看起来像这样
double sum = 0.0;
Parallel.ForEach(myCollection, arg =>
{
sum += ComplicatedFunction(arg);
});
// Use sum variable below
当我使用常规的foreach
循环时,我得到了不同的结果。可能在ComplicatedFunction
内部有更深的东西,但sum
变量可能会意外地受到并行化的影响?
https://stackoverflow.com/questions/3367293
复制相似问题