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

相关内容

热门资讯

实测辅助!天天微友有辅助麻,海... 大家好,今天小编来为大家解答海盗来了刷能量辅助这个问题咨询软件客服可以免费测试直接加微信(13670...
可靠教程开挂!小闲辅助软件下载... 可靠教程开挂!小闲辅助软件下载,小程序财神十三张祈福(玩家必看秘籍开挂辅助软件);亲,小闲辅助软件下...
分析辅助!丰城双剑新版最强高分... 【亲,丰城双剑新版最强高分攻略 这款游戏可以开挂的,确实是有挂的,很多玩家在这款丰城双剑新版最强高分...
详细教程!开挂!hhpoker... 详细教程!开挂!hhpoker辅助器,广东雀神透视(透视计算开挂辅助插件);无需打开直接搜索加薇13...
推荐辅助!微信多乐跑辅助,哈糖... 推荐辅助!微信多乐跑辅助,哈糖大菠萝破解器,一分钟了解开挂(详细教程);亲,哈糖大菠萝破解器这款游戏...
必赢教程辅助!小程序牵手跑得快... 必赢教程辅助!小程序牵手跑得快辅助器,广东雀神智能插件使用免费(透视免费开挂辅助安装)1、下载安装好...
教会辅助!广丰中至510k辅助... 教会辅助!广丰中至510k辅助,随意玩辅助软件,总算了解开挂(有挂透明挂)《详细加薇13670430...
黑科技教程开挂!新漫游正版辅助... 黑科技教程开挂!新漫游正版辅助软件,西兵辅助器(盘点一款开挂辅助平台);新漫游正版辅助软件中的10万...
必看辅助!哈糖大菠萝怎么开挂,... 必看辅助!哈糖大菠萝怎么开挂,兴动互娱辅助工具,终于知道开挂(有挂总结);无需打开直接搜索打开薇:1...
黑科技教程开挂!wpk透视工作... 黑科技教程开挂!wpk透视工作室,雀友会广东潮汕bus(玩家必备教程开挂辅助插件);打开点击测试直接...