c# - 尝试捕获最后的问题

标签 c# exception-handling

在 Try Catch Finally block 中,finally block 是无论如何总是执行,还是仅当 catch block 不返回错误时才执行?

我的印象是 finally block 只有在 catch block 没有错误地通过时才会执行。如果 catch block 因为错误而被执行,它不应该一起停止执行并返回错误消息吗?

最佳答案

finally block (几乎)总是执行,无论是否有异常。

我说 nearly 是因为在某些情况下 finally 不能保证被调用:

此外,即使输入 finally block ,如果 ThreadAbortException在线程进入 finally block 时发生,finally block 中的代码将不会运行。

可能还有其他一些情况......

关于c# - 尝试捕获最后的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3304308/

相关文章:

c# - Web API 重定向不起作用

c# - 如何在 ASP.NET Core MVC 中获取 Url Referrer?

c# - 如何在程序的 app.config 文件中存储文件路径?

Python:抑制进入命令行的错误?

java - 处理java异常的最佳实践

c# - JetBrains Rider - 配置应用程序设置覆盖

c# - 用于在一组消息中识别 'keywords' 的算法(或 C# 库)?

Node.js 最佳实践异常处理

java - 将异常写入文件

c++ - 抛出一个通过引用传递的临时参数