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真的有透视嘛(... 透视解谜!wpk真的有透视嘛(透视)wpk透视辅助方法,教程练习(真的有挂)-哔哩哔哩1、点击下载安...
透视方式!wepoker有辅助... 透视方式!wepoker有辅助插件吗,wepoker俱乐部辅助器(脚本)详细教程(本来有挂)-哔哩哔...
近期!aapoker破解侠是真... 近期!aapoker破解侠是真的吗,aapoker透视脚本下载(透视)妙计教程(都是真的有挂)-哔哩...
透视解迷!wpk模拟器多开(透... 透视解迷!wpk模拟器多开(透视)wpk透视插件,教程步骤(有挂解密)-哔哩哔哩1、wpk模拟器多开...
透视项目!wepoker怎么下... 透视项目!wepoker怎么下载游戏,wepoker轻量版透视系统(脚本)曝光教程(原来有挂)-哔哩...
做出回应!aapoker辅助软... 做出回应!aapoker辅助软件合法吗,aapoker透视插件(透视)演示教程(其实有挂)-哔哩哔哩...
透视分享!wpk透视是真的吗(... 透视分享!wpk透视是真的吗(透视)有哪些免费的wpk透视码,教程攻略(真实有挂)-哔哩哔哩;有哪些...
透视学习!wepoker辅助是... 透视学习!wepoker辅助是真的吗,wepoker智能辅助插件(脚本)了解教程(一贯真的有挂)-哔...
据玩家消息!aa poker透... 据玩家消息!aa poker透视软件,aapoker透视怎么用(透视)模板教程(本来真的是有挂)-哔...
透视解谜!wpk德州局透视(透... 透视解谜!wpk德州局透视(透视)wpk德州局怎么透视,教程练习(有挂规律)-哔哩哔哩1、wpk德州...