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

相关内容

热门资讯

正版开挂"hhpok... 正版开挂"hhpoker辅助软件是真的么"wepoker买钻石有用吗(透视)开挂辅助脚本(确实有挂)...
开挂辅助!多乐辅助app,aa... 【福星临门,好运相随】;开挂辅助!多乐辅助app,aapoker怎么拿好牌(透视)开挂辅助安装(有挂...
玩家必看科普“wepoker高... 玩家必看科普“wepoker高级辅助”开挂(透视)辅助脚本(扑克教程有挂辅助) 【无需打开直接搜索加...
透视辅助!wepoker底牌透... 透视辅助!wepoker底牌透视,哈糖大菠萝有挂吗,关于开挂辅助平台(透视有挂工具)>>您好:软件加...
正版辅助"aapok... aapoker透视脚本开挂教程视频分享装挂详细步骤在当今的网络游戏中,aapoker透视脚本作为一种...
辅助开挂!博雅红河西元红河修改... 辅助开挂!博雅红河西元红河修改器,poker红龙辅助(透视)开挂辅助工具(有挂方法);博雅红河西元红...
透视辅助!hardrock透视... 透视辅助!hardrock透视工具,pokemmo辅助工具,传授开挂辅助插件(透视有挂方略)hard...
透视安装“hhpoker开挂教... 透视安装“hhpoker开挂教程”开挂(透视)辅助安装(AI教程有挂秘笈);无需打开直接搜索加(薇:...
盘点开挂"wpk私人... 您好:这款wpk私人局辅助是真的吗游戏是可以开挂的,确实是有挂的,很多玩家在这款wpk私人局辅助是真...
开挂辅助!破解大菠萝的辅助器,... 开挂辅助!破解大菠萝的辅助器,wepoker游戏下载(透视)开挂辅助神器(有挂秘籍);破解大菠萝的辅...