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

相关内容

热门资讯

辅助透视!hhpoker德州有... 辅助透视!hhpoker德州有挂吗(透视)永久脚本辅助挂(详细辅助揭秘教程);1、hhpoker德州...
透视攻略"hhpok... 透视攻略"hhpoker可以开挂吗"详细辅助微扑克教程(果然真的是有挂)1、hhpoker可以开挂吗...
透视中牌率"拱趴大菠... 透视中牌率"拱趴大菠萝万能挂图解"详细辅助科技教程(好像是真的有挂);1)拱趴大菠萝万能挂图解辅助挂...
透视好牌!xpoker辅助器(... 透视好牌!xpoker辅助器(透视)永久脚本辅助软件(详细辅助攻略教程)1、任何xpoker辅助器a...
透视辅助"wepok... 透视辅助"wepoker作弊辅助"详细辅助普及教程(切实存在有挂)1、首先打开wepoker作弊辅助...
透视苹果版!红龙poker辅助... 透视苹果版!红龙poker辅助工具(透视)永久脚本辅助器(详细辅助德州论坛)暗藏猫腻,小编详细说明红...
透视透视!sohoo poke... 透视透视!sohoo poker辅助器(透视)永久脚本辅助软件(详细辅助必胜教程)1、操作简单,无需...
透视免费"wepok... 透视免费"wepoker私局代打"详细辅助可靠技巧(果然是真的有挂)该软件可以轻松地帮助玩家将wep...
透视辅助!wepoker私人局... 透视辅助!wepoker私人局可以透视(透视)永久脚本辅助app(详细辅助细节方法)进入游戏-大厅左...
透视教程"悦扑克脚本... 透视教程"悦扑克脚本"详细辅助可靠技巧(果然真的有挂);1、悦扑克脚本透视辅助简单,悦扑克脚本软件透...