中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

.Net4.0 Parallel編程(三)Data Parallelism 下

  在上篇文章中介紹了如何Break、Stop循環,以及如何定義線程局部變量。在本文中介紹如何在外部去取消循環、以及異常的處理。

  Cancel

  在并行的循環中支持通過傳遞ParallelOptions參數中的CancellationToken進行取消循環的控制,我們可以CancellationTokenSource實例化之后傳遞給ParallelOptions對象Cancellation值。下面來看個示例:

[TestMethod]
public void CancelLoop()
{
var sourceNums
= Enumerable.Range(0, 1000000000);
var cts
= new CancellationTokenSource();
var po
= new ParallelOptions();
var stack
= new ConcurrentStack<int>();
po.CancellationToken
= cts.Token;
po.MaxDegreeOfParallelism
= System.Environment.ProcessorCount;
Task.Factory.StartNew(()
=>
{
foreach (var num in sourceNums)
{
if (num == 1000000)
cts.Cancel();
}
});

try
{
Parallel.ForEach(sourceNums,po, num
=>
{
stack.Push(num);
po.CancellationToken.ThrowIfCancellationRequested();
});
}
catch (OperationCanceledException e)
{
Console.WriteLine(e.Message);
}
Console.WriteLine(stack.Count);
}

NET技術.Net4.0 Parallel編程(三)Data Parallelism 下,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲欧美国产精品久久 | 第一福利社区1024 | 免费h视频 | 成人免费视频播放 | 亚洲一区久久 | 午夜影院在线观看视频 | 青青久久久 | 欧美不卡在线 | 久久99精品久久久久久狂牛 | 五月天婷婷久久 | 色婷婷国产精品 | 国产高清免费 | 久久亚洲一区二区三区四区 | 久久国| 日一区二区 | 国产精品久久久久久久久久久久午夜片 | 国产欧美精品 | 亚洲精品日日夜夜 | 国产精品久久久久久一区二区三区 | 国产特一级黄色片 | 中文字幕91av | 欧美精品一区二区在线观看 | 国产成人黄色 | 亚洲精品成人 | 亚洲精品www | 久久噜噜噜精品国产亚洲综合 | 91天堂网| 精品一区在线免费观看 | 久久小视频 | 色综合av| 一区二区三区四区在线 | 超碰在线97国产 | 久久99深爱久久99精品 | 国产视频精品视频 | 97国产一区二区精品久久呦 | 亚洲精品久久嫩草网站秘色 | 久久精品欧美一区二区三区不卡 | 精品国产免费一区二区三区演员表 | 97精品国产一区二区三区 | 中文字幕99| 亚洲性视频 |