gpt4 book ai didi

.net - 从 .Net Framework v.4.0 到 4.5 还发生了哪些其他无声变化?

转载 作者:行者123 更新时间:2023-12-04 12:10:09 25 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center为指导。




8年前关闭。




我们想切换到 .net 4.5,因为它提供了许多改进。

但是……有时我会发现一些棘手的细节,这些细节与框架中的重大变化有关。

让我们寻找未观察到的 TPL exception handling例如:

If you do not wait on a task that propagates an exception, or access its Exception property, the exception is escalated according to the .NET exception policy when the task is garbage-collected. (note, there is no link or clarification for the term "exception policy")



嗯,这似乎是 .Net v.4.0 中的行为

但是斯蒂芬·图布 tells us more :

To make it easier for developers to write asynchronous code based on Tasks, .NET 4.5 changes the default exception behavior for unobserved exceptions. While unobserved exceptions will still cause the UnobservedTaskException event to be raised (not doing so would be a breaking change), the process will not crash by default. Rather, the exception will end up getting eaten after the event is raised, regardless of whether an event handler observes the exception. This behavior can be configured, though. A new CLR configuration flag may be used to revert back to the crashing behavior of .NET 4.
Note that this change doesn’t mean developers should be careless about ignoring unhandled exceptions… it just means the runtime is a bit more forgiving than it used to be.



这是一个很大的惊喜。考虑到文档中没有更新。

所以,我想知道我最好知道在 .Net v4.5 中发生的其他“无声”变化
请分享你的知识。

附言这里的“无声”是指几乎从Wat's New中了解到的变化 articles甚至官方文档。

最佳答案

The .NET Framework breaking change document呼唤这一点(以及更多!)。

关于.net - 从 .Net Framework v.4.0 到 4.5 还发生了哪些其他无声变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14424221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com