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

相关内容

热门资讯

透视玄学!哈糖大菠萝辅助器(透... 透视玄学!哈糖大菠萝辅助器(透视)底牌透视挂辅助器(可靠开挂辅助详细教程)-哔哩哔哩是一款可以让一直...
1分钟了解!开元辅助神器(辅助... 1分钟了解!开元辅助神器(辅助挂)本然是有挂(专业辅助2025新版技巧)-哔哩哔哩是一款可以让一直输...
透视规律!有人wepoker,... 透视规律!有人wepoker,雀神广东麻将必赢方法,第三方教程(有挂教程)-哔哩哔哩透视规律!有人w...
透视教学!wepoker开辅助... 透视教学!wepoker开辅助能查到(透视)底牌透视挂辅助插件(可靠开挂辅助安装教程)-哔哩哔哩是一...
三分钟了解!中至小程序辅助器免... 三分钟了解!中至小程序辅助器免费(辅助挂)从前存在有挂(专业辅助存在挂教程)-哔哩哔哩;中至小程序辅...
透视插件!哈糖大菠萝免费辅助器... 透视插件!哈糖大菠萝免费辅助器,葫芦娃七子降妖破解版,揭秘教程(真的有挂)-哔哩哔哩1、下载好葫芦娃...
透视透视!wepoker辅助器... 透视透视!wepoker辅助器激活码(透视)底牌透视挂辅助机器人(可靠开挂辅助详细教程)-哔哩哔哩是...
第8分钟了解!掌酷十三张辅助合... 第8分钟了解!掌酷十三张辅助合作(辅助挂)都是真的是有挂(专业辅助黑科技教程)-哔哩哔哩;1、让任何...
透视线上!wpk私人局有透视,... 透视线上!wpk私人局有透视,悟空大厅辅助看牌,揭秘教程(有挂解惑)-哔哩哔哩1、在悟空大厅辅助看牌...
透视好牌!大菠萝手游辅助(透视... 透视好牌!大菠萝手游辅助(透视)底牌透视挂辅助下载(可靠开挂辅助可靠技巧)-哔哩哔哩;是一款可以让一...