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

相关内容

热门资讯

2分钟带你开挂!新西部透视辅助... 2分钟带你开挂!新西部透视辅助(辅助挂)其实真的是有挂(讲解有挂)-哔哩哔哩;新西部透视辅助是一项新...
第四分钟带你了解!拼十app辅... 第四分钟带你了解!拼十app辅助(透视挂)重大发现外挂开挂辅助平台(其实确实有挂) 【无需打开直接搜...
4分钟带你讲究!人海大厅辅助插... 人海大厅辅助插件 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: 1...
第9分钟带你了解!激k辅助器有... 第9分钟带你了解!激k辅助器有挂吗(透视挂)透视黑科技外挂开挂辅助软件(果然是有挂的)您好:激k辅助...
第7分钟带你了解!星悦山东辅助... 第7分钟带你了解!星悦山东辅助(辅助挂)原来有挂(有挂规律)-哔哩哔哩;星悦山东辅助最新软件透视开挂...
第九分钟带你讲解!中至小程序抚... 第九分钟带你讲解!中至小程序抚州辅助器,新玄龙辅助工具,2026新版技巧(有挂细节)-哔哩哔哩;无需...
七分钟带你了解!乐酷副厅辅助(... 七分钟带你了解!乐酷副厅辅助(透视挂)透视辅助外挂开挂辅助脚本(果然确实有挂) >>您好:软件加薇1...
7分钟带你开挂!心悦游戏透视辅... 7分钟带你开挂!心悦游戏透视辅助器免费(辅助挂)其实真的是有挂(真的有挂)-哔哩哔哩;心悦游戏透视辅...
四分钟带你讲究!指尖四川辅助脚... 大家好,今天小编来为大家解答指尖四川辅助脚本视频这个问题咨询软件客服可以免费测试直接加微信(1367...
第5分钟带你了解!桂麻圈辅助(... 第5分钟带你了解!桂麻圈辅助(辅助挂)科普分享外挂开挂辅助软件(果然确实有挂);无需打开直接搜索微信...