另一个面试问题期待真/假答案,但我不太确定。
复制
- 在 .NET 中,如果 catch 块中出现错误,finally 总是会被调用怎么办? https://stackoverflow.com/questions/582095/in-net-what-if-something-fails-in-the-catch-block-will-finally-always-get-call
- finally 块总是运行吗? https://stackoverflow.com/questions/464098/does-a-finally-block-always-run
- finally 不在 .net try..finally 块中执行时的条件 https://stackoverflow.com/questions/111597/conditions-when-finally-does-not-execute-in-a-net-try-finally-block
- 如果我在 Try 块中返回值,Finally 语句中的代码会触发吗? https://stackoverflow.com/questions/345091/will-code-in-a-finally-statement-fire-if-i-return-a-value-in-a-try-block
finally
被执行大多数时候。几乎所有情况都是如此。例如,如果出现异步异常(例如StackOverflowException
, OutOfMemoryException
, ThreadAbortException
) 被扔到线程上,finally
不保证执行。这就是为什么受限执行区域 http://msdn.microsoft.com/en-us/library/ms228973.aspx存在用于编写高度可靠的代码。
出于采访目的,我希望这个问题的答案是false(我不会保证任何事情!面试官自己可能不知道这一点!)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)