C# 组合CancellationTokenSource的使用
创始人
2024-11-15 19:35:28
0

前言

在异步编程中,经常需要使用CancellationToken来取消任务的执行。
但是通常情况下,一个耗时任务还需要有超时机制。那个如何让一个任务既可以超市自动取消也可以手动取消?

组合CancellationTokenSourced的使用

//创建两个cts(一个手动取消,一个超时取消) CancellationTokenSource cancellCts= new CancellationTokenSource(); CancellationTokenSource timeOutCts = new CancellationTokenSource(1000); //将两个cts组合 CancellationTokenSource compositeCts = CancellationTokenSource.CreateLinkedTokenSource(cancellCts.Token, timeOutCts.Token); try { 	//执行异步耗时任务 	await DoLongTimeTask(compositeCts.Token) } catch (OperationCanceledException) {     if (cancellCts.Token.IsCancellationRequested)     {        	//手动取消          throw new OperationCanceledException();     }     else if (timeOutCts.Token.IsCancellationRequested)     {     	//超时取消         throw new TimeoutException();     } } finally { 	cancellCts.Dispose();    timeOutCts.Dispose();    compositeCts.Dispose(); } 

相关内容

热门资讯

第四分钟窍要!情怀娱乐辅助器,... 第四分钟窍要!情怀娱乐辅助器,随意玩辅助器视频有挂(辅助)总是存在有安装(哔哩哔哩)1、实时随意玩辅...
4分钟大纲!微乐家乡麻辣自建房... 4分钟大纲!微乐家乡麻辣自建房辅助app,天胡辅助脚本(辅助)其实是有辅助(哔哩哔哩)1、下载好微乐...
六分钟阶段!云麻圈修改器,蜜瓜... 六分钟阶段!云麻圈修改器,蜜瓜大厅辅助视频(辅助)切实真的有平台(哔哩哔哩)1、在蜜瓜大厅辅助视频插...
4分钟方案!蜀山四川小程序辅助... 4分钟方案!蜀山四川小程序辅助插件,九哥大厅辅助(辅助)一直是真的修改器(哔哩哔哩)蜀山四川小程序辅...
七分钟教程书!丽水茶苑手机辅助... 七分钟教程书!丽水茶苑手机辅助,新二号辅助(辅助)本来存在有平台(哔哩哔哩)1、不需要AI权限,帮助...
四分钟操作!鄱阳翻精辅助软件,... 四分钟操作!鄱阳翻精辅助软件,新悠悠手游辅助(辅助)确实有挂脚本(哔哩哔哩)1、玩家可以在鄱阳翻精辅...
7分钟大纲!新海贝之城脚本,新... 7分钟大纲!新海贝之城脚本,新挑战辅助脚本(辅助)确实真的是有app(哔哩哔哩);1、新海贝之城脚本...
两分钟经验!雀神麻雀充运势用吗... 两分钟经验!雀神麻雀充运势用吗,新八戒辅助(辅助)其实有挂修改器(哔哩哔哩)1、该软件可以轻松地帮助...
第6分钟法门!牌乐门安全黑科技... 第6分钟法门!牌乐门安全黑科技是真的吗,财神13章作必弊码大全(辅助)竟然有挂脚本(哔哩哔哩)牌乐门...
两分钟总结!陕麻圈辅助器怎么安... 两分钟总结!陕麻圈辅助器怎么安装,三哥玩辅助器(辅助)切实是有辅助器(哔哩哔哩)运陕麻圈辅助器怎么安...