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系统发牌规律这款游戏可以开挂的,确实是有挂的,科技了解添加QQ群{42...
黑科技软件!Wepoker偷偷... 你好,Wepoker偷偷看牌的官方解释是真的可以开挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
一分钟快速了解!wepoker... 知识提示:你好!wepoker辅助开挂方法这款游戏可以开挂的,确实是有挂的,科技了解添加QQ群{42...
黑科技软件!wepoker原来... 知识提示:你好!wepoker原来有挂这款游戏可以开挂的,确实是有挂的,科技了解添加QQ群{4236...
黑科技好友!wepoker辅助... 你好,wepoker辅助开挂方法是真的可以开挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好...
玩家必备科技!wepoker透... 知识提示:你好!wepoker透视挂辅助教程这款游戏可以开挂的,确实是有挂的,科技了解添加QQ群{4...
专业讨论!wepokerplu... 知识提示:你好!wepokerplus辅助透视教程这款游戏可以开挂的,确实是有挂的,科技了解添加QQ...
实测发现!WePOKer辅助软... 知识提示:你好!WePOKer辅助软件挂这款游戏可以开挂的,确实是有挂的,科技了解添加QQ群{423...
黑科技ai!wepoker透视... 知识提示:你好!wepoker透视脚本这款游戏可以开挂的,确实是有挂的,科技了解添加QQ群{4236...
实测分享!wepoker能开挂... 你好,wepoker能开挂吗是真的可以开挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总...