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

相关内容

热门资讯

透视教材!wepoker破解版... 透视教材!wepoker破解版内购,wepoker透视脚本免费(透视)一贯有透视工具(哔哩哔哩)1、...
透视项目!wpk透视辅助下载,... 透视项目!wpk透视辅助下载,wpk俱乐部辅助器(透视)确实有脚本工具(哔哩哔哩)1、不需要AI权限...
透视讲义!aapoker万能辅... 透视讲义!aapoker万能辅助器,aapoker透视脚本(透视)一贯真的是有脚本app(哔哩哔哩)...
透视法子!hhpoker俱乐部... 透视法子!hhpoker俱乐部是干嘛的,hhpoker作必弊码(透视)一贯是有脚本插件(哔哩哔哩)1...
透视指南!wepoker插件下... 透视指南!wepoker插件下载,wepoker安装教程(透视)确实真的有透视教程(哔哩哔哩)1、w...
透视指南书!aapoker俱乐... 透视指南书!aapoker俱乐部靠谱吗,aapoker透视脚本入口(透视)一直存在有脚本挂(哔哩哔哩...
透视举措!aapoker能控制... 透视举措!aapoker能控制牌吗,aapoker万能辅助器(透视)总是真的有脚本工具(哔哩哔哩)1...
透视资料!德普之星透视辅助插件... 透视资料!德普之星透视辅助插件,德普之星辅助器app(透视)本来真的是有脚本工具(哔哩哔哩)1)德普...
透视机巧!aapoker透视脚... 透视机巧!aapoker透视脚本下载,aapoker发牌逻辑(透视)原来真的是有透视工具(哔哩哔哩)...
透视教程书!wepoker的辅... 透视教程书!wepoker的辅助器,wepoker辅助器最新版本更新内容(透视)确实是真的透视器(哔...