У меня есть простой вопрос: у меня есть простой цикл Parallel for. это для цикла является частью службы Windows. Я хочу остановить цикл, когда кто-то останавливает службу. Я могу найти три способа остановить параллель, которая находится в состоянии if. Каков наилучший способ остановить параллель для цикла и каковы различия?
CancellationTokenSource cancellationToken = new CancellationTokenSource();
ParallelOptions options = new ParallelOptions();
options.CancellationToken = cancellationToken.Token;
Parallel.For(0, maximum_operations, options, (a, loopState) =>
{
{
//Do something
if(!KeepProcessing)
{
//loopState.Break();
//loopState.Stop();
cancellationToken.Cancel();
}
}
});