我有这段代码来启动一个Parallel ForEach循环:
Parallel.ForEach<ListViewItem>(filesListView.Items.Cast<ListViewItem>(), new ParallelOptions() { MaxDegreeOfParallelism = Environment.ProcessorCount }, item => {
if (CallToStop == true)
{
//Code here to stop the loop!
}
internalProcessStart(item);
});
我有一些代码会检查是否有停止线程的调用,然后我想使用
break;
中断代码,但这在并行处理中不起作用。我发现有一个相同的问题是由其他人提出的,但他们的代码与我的略有不同,我不确定在哪里放置
ParallelLoopState state
。谢谢!