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(); } 

相关内容

热门资讯

透视操作!hhpoker有没有... 透视操作!hhpoker有没有作必弊辅助(透视)果然有辅助神器(哔哩哔哩)1、hhpoker有没有作...
盘点一款!!微乐小程序免费黑科... 盘点一款!!微乐小程序免费黑科技(外挂),微乐自建房辅助工具安全吗确实的确有挂1、下载好微乐小程序免...
曝光透视!impoker辅助,... 曝光透视!impoker辅助,epoker免费透视脚本(透视)都是是有辅助插件(哔哩哔哩)1、实时e...
近期!广丰510k辅助,切实存... 近期!广丰510k辅助,切实存在有辅助插件(讲解有挂)-哔哩哔哩1、点击下载安装,广丰510k辅助脚...
透视机巧!pokemmo脚本手... 透视机巧!pokemmo脚本手机版(透视)切实是有辅助工具(哔哩哔哩)1)pokemmo脚本手机版辅...
必备科技!微乐小程序免费黑科技... 必备科技!微乐小程序免费黑科技(外挂),微信微乐游戏苹果辅助器本来有挂工具1、任何微乐小程序免费黑科...
详情透视!werplan透视挂... 详情透视!werplan透视挂,悦扑克脚本(透视)真是一直总是有辅助脚本(哔哩哔哩)1、完成werp...
有消息称!心悦填大坑辅助,果然... 有消息称!心悦填大坑辅助,果然有挂辅助插件(发现有挂)-哔哩哔哩1、实时心悦填大坑辅助透视辅助更新:...
透视模块!wepoker有人用... 透视模块!wepoker有人用过吗(透视)竟然是真的辅助工具(哔哩哔哩)1、wepoker有人用过吗...
一起来讨论!微信小程序黑科技(... 一起来讨论!微信小程序黑科技(外挂),微乐小程序游戏辅助器脚本官网一贯有挂详细1、微信小程序黑科技免...