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

相关内容

热门资讯

透视脚本(WePoKer)we... 透视脚本(WePoKer)wepoker有辅助功能吗(透视)都是是有挂(攻略教程)1、用户打开应用后...
透视黑科技!aapoker辅助... 透视黑科技!aapoker辅助插件工具(透视)脚本(切实存在有挂)aapoker辅助插件工具辅助器中...
透视工具"pokem... 透视工具"pokemmo手机版脚本免费"都是真的有挂(透视)AI教程(有挂揭秘)1)pokemmo手...
透视透视!hhpoker透视方... 透视透视!hhpoker透视方法,好像是真的有挂(透视)透明挂教程(有挂工具)hhpoker透视方法...
透视了解(WEPOKER)we... 透视了解(WEPOKER)wepoker辅助器怎么弄(透视)一直真的有挂(细节方法)1、玩家可以在w...
透视透视!aapoker透视插... 透视透视!aapoker透视插件(透视)插件(竟然有挂)1、起透看视 aapoker透视插件透明视辅...
透视私人局"哈糖大菠... 透视私人局"哈糖大菠萝辅助器"其实真的是有挂(透视)2025新版(有挂细节);亲,关键说明,哈糖大菠...
透视讲解!wepoker私局代... 透视讲解!wepoker私局代打,切实真的是有挂(透视)AI教程(有挂教程)1、wepoker私局代...
透视模拟器(WePoKer)w... 透视模拟器(WePoKer)wepoker是不是有人用挂(透视)总是是有挂(力荐教程);1、许多玩家...
透视科技!aapoker辅助软... 透视科技!aapoker辅助软件合法吗(透视)脚本(竟然是有挂)1、aapoker辅助软件合法吗ai...