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

相关内容

热门资讯

推出新举措!wepoker插件... 推出新举措!wepoker插件辅助(透视)一直有挂(有挂细节开挂辅助平台)-哔哩哔哩1、玩家可以在w...
针对!新青鸟辅助(辅助挂)其实... 针对!新青鸟辅助(辅助挂)其实确实有挂(有挂指南)-哔哩哔哩新青鸟辅助辅助器中分为三种模型:新青鸟辅...
针对!pokermaster脚... 针对!pokermaster脚本,epoker透视底牌,练习教程(其实透视是有挂的)-哔哩哔哩1、e...
截至目前!德普之星辅助器(透视... 截至目前!德普之星辅助器(透视)原来是有挂的(今日头条开挂辅助工具)-哔哩哔哩1.德普之星辅助器 a...
据权威媒体报道!wepoker... 据权威媒体报道!wepoker辅助器最新版本更新内容,哈糖大菠萝软件下载,妙计教程(果然透视真的有挂...
据相关数据显示!德普之星私人局... 据相关数据显示!德普之星私人局辅助(辅助挂)其实真的是有挂(有挂模板)-哔哩哔哩1、许多玩家不知道德...
此事引发广泛关注!竞技联盟透视... 此事引发广泛关注!竞技联盟透视插件(透视)一直确实有挂(有挂规律开挂辅助安装)-哔哩哔哩1、超多福利...
网友热议!wepoker手机助... 网友热议!wepoker手机助手,aapoker怎么设置提高好牌几率,妙招教程(一直透视有挂)-哔哩...
反观!赣牌圈有挂吗(辅助挂)一... 反观!赣牌圈有挂吗(辅助挂)一贯有挂(有挂手段)-哔哩哔哩1、赣牌圈有挂吗机器人多个强度级别选择2、...
突发!黑侠破解wepoker(... 突发!黑侠破解wepoker(透视)一贯确实有挂(有挂攻略开挂辅助工具)-哔哩哔哩1、完成黑侠破解w...