什么是“第一次机会例外”?

什么是第一次机会例外? .NET程序是如何以及从哪里来的? 那为什么叫这个特殊的名字(我们在谈论什么“机会”)?

这是一个debugging的概念。 基本上,exception会首先引发到debugging器,然后引发到实际的程序中,如果没有处理它,则会再次引发到debugging器,在应用程序本身之前和之后,给您一个在IDE中执行某些操作的机会 。 这似乎是Microsoft Visual Studio发明。

抛出exception时,会引发第一次机会exception通知。 第二次机会通知是当它没有被发现。 (机会 – 在debugging器中进入代码的机会)。

第一次和第二次机会exception处理

我刚开始使用debugging器,并跑到这。 在我的研究中,我find了MSDN博客文章什么是第一次机会exception? 为我清理了它。

对我来说,博客文章中的大部分内容是指向debugging器的通知,而不是我的代码必须处理的东西,最重要的是,“一次机会exception消息通常并不意味着码。”

当一个应用程序被debugging时,只要遇到exception,debugging器就会得到通知。 此时,应用程序被挂起,debugging器决定如何处理exception。 第一次通过这个机制被称为“第一次机会”例外。

根据debugging器的configuration,它将恢复应用程序并传递exception,否则将使应用程序暂停并进入debugging模式。 如果应用程序处理exception,它将继续正常运行。

第一次机会exception消息通常并不意味着代码中存在问题。 对于优雅处理exception的应用程序/组件,第一次机会exception消息让开发人员知道遇到exception情况并处理。

从开发者的angular度来看,它更多的是关于二次机会的例外,因为这意味着它不是在代码中处理 ; 因此应用程序将停止。

第一个机会可能是其中的很多,但是从发展的angular度来看更多的是第二次机会,因为这会导致应用程序崩溃。