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

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

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

  Cancel

  在并行的循環(huán)中支持通過(guò)傳遞ParallelOptions參數(shù)中的CancellationToken進(jìn)行取消循環(huán)的控制,我們可以CancellationTokenSource實(shí)例化之后傳遞給ParallelOptions對(duì)象Cancellation值。下面來(lái)看個(gè)示例:

[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技術(shù).Net4.0 Parallel編程(三)Data Parallelism 下,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美精品久久久久久 | 欧产日产国产精品99 | 五月香婷婷 | 91麻豆精品国产91久久久久久 | 欧美精品在线免费观看 | 成人国产精品久久久 | 欧美精品导航 | 国产精品欧美一区二区 | 久久久久久久久久一区 | 国产91综合一区在线观看 | 午夜精品久久久久久 | 久久久精品视频免费 | 日韩成人在线网站 | 国产精品国产 | 天天射夜夜操 | 一区二区三区国产精品 | 在线日韩欧美 | 女同videos另类 | 免费亚洲婷婷 | 国产女人第一次做爰毛片 | 久久综合影院 | 中文字幕乱码一区二区三区 | 国产精品777一区二区 | 欧美精品久久一区 | gogo肉体亚洲高清在线视 | 日本超碰| 国产精品免费观看视频 | 国产91在线精品 | 久久久久久国产一区二区三区 | 日韩欧美一级精品久久 | 先锋资源亚洲 | 精品国产一区二区三区性色av | 日韩免费成人av | 亚洲乱码国产乱码精品精98午夜 | 久久天天躁狠狠躁夜夜躁2014 | 亚洲高清在线 | 99免费在线视频 | 综合网中文字幕 | 国产精品国产精品国产专区不卡 | 天天爽综合网 | 亚洲精品一 |