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

相关内容

热门资讯

黑科技好牌!(微扑克)透视辅助... 黑科技好牌!(微扑克)透视辅助神器,(微扑克wpk)从前真的有挂,可靠教程(有挂教程);人气非常高,...
黑科技计算(wePoke)黑科... 黑科技计算(wePoke)黑科技透明挂辅助助手(透视)2025新版教程(原来存在有挂)1、全新机制【...
aapoker透明挂(aapo... aapoker透明挂(aapoKer)德州aa扑克透明挂(辅助挂)透明教程(一贯真的是有挂)1、aa...
黑科技科技!智星德州菠萝,云扑... 黑科技科技!智星德州菠萝,云扑克app辅助,wpk教程(确实存在有挂);致您一封信;亲爱智星德州菠萝...
黑科技透明挂!(EV扑克)外挂... 1、黑科技透明挂!(EV扑克)外挂辅助软件,(pokerrrr2)一向是有挂,2025新版总结(有挂...
黑科技ai(微扑克软件)外挂透... 黑科技ai(微扑克软件)外挂透视辅助挂(透视)细节揭秘(竟然真的是有挂)1、微扑克软件系统规律教程、...
aapoker透明挂(AAPO... aapoker透明挂(AAPOKer)aapoker发牌逻辑(辅助挂)技巧教程(一贯存在有挂)1、上...
黑科技最新!aapoker系统... 黑科技最新!aapoker系统机制,aapoker智能ai辅助,2025新版技巧(从前是真的有挂)科...
黑科技私人局!(aapOker... 黑科技私人局!(aapOker)透明挂辅助器,(AAPOKer)其实有挂,教你教程(有挂透明);人气...
黑科技存在(wpk游戏)外挂透... 黑科技存在(wpk游戏)外挂透视辅助软件(透视)扑克教程(真是真的是有挂)1、wpk游戏ai辅助优化...