c# - 在 C# 中,如果抛出未处理的异常,Finally block 是否会在 try、catch、finally 中执行?

标签 c# .net finally

最佳答案

finally大部分时间 执行。几乎都是这种情况。例如,如果在线程上抛出异步异常(如 StackOverflowExceptionOutOfMemoryExceptionThreadAbortException),finally不能保证执行。这就是为什么 constrained execution regions为编写高度可靠的代码而存在。

出于面试目的,我希望这个问题的答案是(我不能保证任何事情!面试官自己可能不知道!)。

关于c# - 在 C# 中,如果抛出未处理的异常,Finally block 是否会在 try、catch、finally 中执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/833946/

相关文章:

java - 在 Java 中,是否保证调用 "finally" block (在 main 方法中)?

c# - Windows服务的基本应用有哪些?

c# - 我如何使用反射处理数组

c# - 在 C# 中监视文件/目录访问

c# - 如何在 .NET 中构建图表应用程序?

c# - 如何将 Content-Length、Content-Type 和 Last-Modified 添加到 HTTP 响应消息 header

java try finally 阻止关闭流

c# - 在网站上运行 VMWare API 失败

c# - 更改网格中行的背景颜色

java - 从 catch 中以及从 finally block 中抛出异常