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

相关内容

热门资讯

热点推荐!德扑起手牌胜率图,w... 热点推荐!德扑起手牌胜率图,wpk免费赛规则,科技教程(有挂详情)-哔哩哔哩;1、点击下载安装,德扑...
9分钟科普!wepoke有挂吗... 9分钟科普!wepoke有挂吗网上(透明挂黑科技)外挂透明挂辅助ai(2026已更新)(哔哩哔哩);...
总算清楚!(微扑克线上)外挂透... 总算清楚!(微扑克线上)外挂透明挂辅助透视!(Wepoke俱乐部)玩家教程(2024已更新)(哔哩哔...
十分钟领会!wepoker怎么... 十分钟领会!wepoker怎么设置房间,wepokerplus到底是挂了吗(透视)实用技巧(今日头条...
新手必备!德州哪里有扑克辅助器... 新手必备!德州哪里有扑克辅助器,wpk微扑克免费辅助,黑科技教程(有挂助手)-哔哩哔哩;德州哪里有扑...
4分钟理解!微扑克外挂(透明挂... 4分钟理解!微扑克外挂(透明挂黑科技)外挂透明挂辅助器(2026已更新)(哔哩哔哩);1、让任何用户...
大家学习交流!(德扑开发)软件... 大家学习交流!(德扑开发)软件透明挂辅助透视!(红龙poker)必备教程(2025已更新)(哔哩哔哩...
4分钟发现!wepoker私人... 4分钟发现!wepoker私人局辅助器怎么用,德普之星透视辅助软件是真的吗(透视)安装教程(有挂技巧...
玩家必看科普!wpk德州专用辅... 玩家必看科普!wpk德州专用辅助器,wepower有ai,透牌教程(有挂教学)-哔哩哔哩;1、这是跨...
两分钟辅助!wepoke开发者... 两分钟辅助!wepoke开发者(透明挂黑科技)外挂透明挂辅助神器(2026已更新)(哔哩哔哩);1、...