永发信息网

如何处理system.threading.tasks.taskcanceledexception

答案:2  悬赏:20  手机版
解决时间 2021-03-19 01:51
  • 提问者网友:泪痣哥哥
  • 2021-03-18 06:07
如何处理system.threading.tasks.taskcanceledexception
最佳答案
  • 五星知识达人网友:你可爱的野爹
  • 2021-03-18 07:33
先说Exception。
Exception
        各种各样的Exception只是一个消息,告诉你程序在某一部分没有按照期望的流程执行。抛出一个Exception是可以中断程序的正常执行的,一个要有返回值的方法都可以不返回而直接终止。


        有的Exception是你不想看到的、甚至是致命的,而有的Exception则无关紧要。可一旦Exception发生了,你是无法通过任何处理来达到任何改变的。如果是你不懈看到的Exception,你只能根据Exception的内容,对程序逻辑进行必要完善,以避免Exception的再次发生。


        当Exception发生了,你只有通过try...catch...来捕获。如果你没有捕获,那么Exception往往会中断程序运行。


TaskCanceledException
        这个Exception发生在Task被取消的时候。


        如果这个取消是你操作的,那么抛出这个Exception是必然的,也是意料之内的,因此只需要catch不需要任何操作。



        如果这个取消不是你操作的,那么可能是源自于操作超时等外部原因而导致Task无法完成,你只能在程序的逻辑上进行必要的完善。
全部回答
  • 1楼网友:長槍戰八方
  • 2021-03-18 08:44
今天查看网站日志时,发现不少这种错误信息。 访问一个页面时,AJAX 请求 ASP.NET Web API 。多次点击刷新,出错。 原因:页面加载 =》 ajax 触发 web api =》 页面刷新 =》web api 的任务被取消 ; web api 是异步编程, 任务取消时,会触发 AggregateException 导常。 日志记录时,遇到 AggregateException 时,直接忽略。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯