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

相关内容

热门资讯

第五分钟掌握!aapoker辅... 第五分钟掌握!aapoker辅助功能,哈局八张模拟器(揭秘透视开挂辅助软件)1)哈局八张模拟器辅助挂...
必备辅助推荐!wepoker高... 必备辅助推荐!wepoker高级辅助“专业开挂透视挂辅助工具”;1.wepoker高级辅助 ai辅助...
一分钟了解“赣牌圈修改器”普及... 一分钟了解“赣牌圈修改器”普及开挂辅助工具-果然存在有挂1、赣牌圈修改器ai辅助优化,赣牌圈修改器发...
第6分钟知晓!wejoker开... 第6分钟知晓!wejoker开挂,广丰510k辅助(玩家透视开挂辅助神器)1、让任何用户在无需广丰5...
让我来分享经验!wepoker... 让我来分享经验!wepoker究竟有透视“新2026版开挂透视挂辅助安装”;wepoker究竟有透视...
第2分钟了解“三哥玩辅助器”专... 第2分钟了解“三哥玩辅助器”专业开挂辅助工具-其实是有挂1、三哥玩辅助器透视辅助简单,三哥玩辅助器软...
十分钟熟悉!来玩app破解版,... 十分钟熟悉!来玩app破解版,微乐陕西三代自建房可以提高胜率(安装透视开挂辅助技巧)1、微乐陕西三代...
推荐十款!wepoker高级辅... 推荐十款!wepoker高级辅助“解密开挂透视挂辅助下载”;wepoker高级辅助 ai辅助是一个元...
第六分钟了解“仙桃晃晃诀窍”安... 第六分钟了解“仙桃晃晃诀窍”安装开挂辅助插件-原来有挂1.仙桃晃晃诀窍 ai辅助创建新账号,点击进入...
十分钟指导!德普之星有辅助软件... 十分钟指导!德普之星有辅助软件,晟和互娱辅助(新2026透视开挂辅助软件);1、超多福利:超高返利,...