How to cancel parallel loops in .NET C# z

How to cancel parallel loops in .NET C# z
CancellationTokenSource cancellationTokenSource = new CancellationTokenSource();

Task.Factory.StartNew(() =>
{
    Thread.Sleep(5000);
    cancellationTokenSource.Cancel();
    Console.WriteLine("Token cancelled");
});

ParallelOptions parallelLoopOptions =
    new ParallelOptions()
    {
        CancellationToken = cancellationTokenSource.Token
    };


try
{               
    Parallel.For(0, Int64.MaxValue, parallelLoopOptions, index =>
    {
        double result = Math.Pow(index, 3);
        Console.WriteLine("Index {0}, result {1}", index, result);
        Thread.Sleep(100);
    });
}
catch (OperationCanceledException)
{
    Console.WriteLine("Cancellation exception caught!");
}
How to cancel parallel loops in .NET C# z

 

How to cancel parallel loops in .NET C# z,布布扣,bubuko.com

How to cancel parallel loops in .NET C# z

上一篇:PHP (20140521)


下一篇:远景WEBGIS平台实现客户端SHP文件加载