Task任务异常是否应该终止正在运行的进程

6 篇文章 0 订阅
6 篇文章 0 订阅

https://docs.microsoft.com/zh-cn/dotnet/framework/configure-apps/file-schema/runtime/throwunobservedtaskexceptions-element

在 .NET Framework 4 中,默认情况下,如果 Task 存在未观察到异常的,则终结器将引发异常并终止进程。 进程终止由垃圾回收和终止的时间决定。

为了使开发人员可以更轻松地根据任务编写异步代码,.NET Framework 4.5 更改未观察到异常的此默认行为。 未观察到异常仍会 UnobservedTaskException 引发事件,但在默认情况下,进程不会终止。 相反,引发事件后将忽略此异常,而不管事件处理程序是否观察到该异常。

在 .NET Framework 4.5 中,可以使用应用程序配置文件中的 <ThrowUnobservedTaskExceptions> 元素来启用引发异常的 .NET Framework 4 行为。

摘:总之,.NET4.5中的Task的一些改进,都是为了迎合异步async/await的写法而做出的改进

http://blog.zhaojie.me/2012/04/exception-handling-in-csharp-async-await-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值