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

相关内容

热门资讯

黑科技最新!哈糖大菠萝切牌规律... 黑科技最新!哈糖大菠萝切牌规律(透视)竟然是有挂(2026已更新)(哔哩哔哩);1、很好的工具软件,...
黑科技辅助挂!pokerwor... 黑科技辅助挂!pokerworld下载(透视)外挂透明挂辅助插件(2026已更新)(哔哩哔哩)1、p...
玩家必知教程!(wpk线上)g... 玩家必知教程!(wpk线上)gg扑克发牌系统(2020已更新)(哔哩哔哩),您好,gg扑克发牌系统这...
黑科技新版!wepower德州... 黑科技新版!wepower德州怎么设置(透视)一直是真的有挂(2025已更新)(哔哩哔哩)一、wep...
玩家实测!德扑之星创建房间设置... 玩家实测!德扑之星创建房间设置(透视)外挂透明挂辅助黑科技(2021已更新)(哔哩哔哩);暗藏猫腻,...
推荐十款!(欢乐棋牌)aapo... 1、推荐十款!(欢乐棋牌)aapoker有外挂吗(2020已更新)(哔哩哔哩);该软件可以轻松地帮助...
黑科技私人局!德扑之星(透视)... 黑科技私人局!德扑之星(透视)一贯有挂(2025已更新)(哔哩哔哩)1、每一步都需要思考,不同水平的...
黑科技中牌率!wepoke用模... 黑科技中牌率!wepoke用模拟器有什么用(透视)外挂透明挂辅助助手(2020已更新)(哔哩哔哩)1...
技术分享!(wpk线上)wpk... 技术分享!(wpk线上)wpk微扑克外挂事件(2026已更新)(哔哩哔哩)1、任何德州ai辅助神器的...
黑科技讲解!云扑克德州辅助器(... 黑科技讲解!云扑克德州辅助器(透视)切实是有挂(2023已更新)(哔哩哔哩)云扑克德州辅助器辅助器中...