2

Stop()我在一个更大的循环中有以下代码,在分析我的代码后,我发现所有 Parallel.For 执行速度的增益在方法完成的很长时间内都会丢失。有什么办法可以改善这一点吗?也许打电话Thread.Sleep()

谢谢。

Parallel.For(0, 1000, (i, loopState) => 
{ 
   if (a == b)
       loopState.Stop(); 
}); 
4

1 回答 1

3

我认为您应该使用loopState.Break()方法,因为它与break关键字平行。该Stop方法设置IsStopped标志,以便其他迭代可以检查此标志并在方便时停止。它不会停止循环。

请参阅msdn 上的停止中断

于 2010-08-30T11:20:13.987 回答