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

相关内容

热门资讯

黑科技存在!aa扑克德州辅助工... 黑科技存在!aa扑克德州辅助工具(wepoke真的有挂)其实真的有挂(有挂ai辅助)-哔哩哔哩;该软...
黑科技能赢(wpk ai辅助)... 黑科技能赢(wpk ai辅助)wpk辅助挂(WPk)都是存在有挂(有挂规律)-哔哩哔哩;wpk辅助挂...
wepoke智能ai(wepo... wepoke智能ai(wepoKE)wepoke有规律吗(黑科技智能ai)总是真的有挂(有挂后台)-...
黑科技工具(wpk ai辅助)... 黑科技工具(wpk ai辅助)wpk有ai吗(Wpk)真是存在有挂(有挂透视)-哔哩哔哩1、进入到w...
黑科技教学!红龙扑克辅助器安全... 黑科技教学!红龙扑克辅助器安全吗(德州ai辅助软件)好像存在有挂(有挂透明挂黑科技)-哔哩哔哩1、下...
wepoke真的有挂(Wepo... 1、wepoke真的有挂(WepokE)wepoke游戏真的是有挂的(黑科技软件透明挂)固有存在有挂...
黑科技有挂(wpk最新黑科技)... 黑科技有挂(wpk最新黑科技)wpk德州辅助器(Wpk)果然是真的有挂(有挂技术)-哔哩哔哩1、wp...
黑科技模拟器!微扑克智能ai辅... 黑科技模拟器!微扑克智能ai辅助(wpk到底有外挂)一贯存在有挂(有挂透明黑科技)-哔哩哔哩1、游戏...
wepoke透明黑科技(weP... wepoke透明黑科技(wePOKE)wepower微扑克有无外挂(黑科技ai代打)切实是有挂(有挂...
黑科技免费(wpk ai辅助)... 黑科技免费(wpk ai辅助)wpk辅助插件(WPK)一贯真的是有挂(讲解有挂)-哔哩哔哩1、操作简...