【问题标题】:First chance vs Second chance exception第一次机会与第二次机会例外
【发布时间】:2010-11-01 14:59:54
【问题描述】:

当我使用 ADPlus 生成转储文件时,我得到了第一次机会和第二次机会异常,但是当我使用任务管理器生成转储文件时,我只得到一次转储文件。这是第二次机会例外吗?无论如何,我对这个第一次和第二次机会异常感到有点困惑,即使我已经阅读了一些关于它的内容。也许如果有人可以提供一些很好的类比,那可能会为我澄清事情

【问题讨论】:

    标签: adplus


    【解决方案1】:

    请看这里:Link

    简而言之,第一次机会异常使调试器在应用程序处理异常之前第一次有机会检查异常和应用程序状态。

    此时您可以停止调试器(它通常是“在创建异常时进入调试器”之类的设置。默认情况下通常是关闭)。如果您不这样做,或者如果您让应用程序继续运行,则会将异常传递给应用程序。

    当应用程序不处理异常时,调试器将获得第二次机会。同样,您可以在此处闯入调试器(默认情况下,这通常是 on)。

    请注意,如果应用程序不处理异常,应用程序通常会终止。

    【讨论】:

    • 补充一点,如果调试器捕获到第二次机会异常,由于应用程序从未处理过它,异常将被带到操作系统来处理(通常通过显示错误并关闭程序) .
    • 通过任务管理器生成转储文件时,是否意味着不会发生相同的过程?因为在那种情况下我只得到一个转储文件?我通过任务管理器获得哪个转储,是第一次机会还是第二次机会?
    • @imak:这是第二次机会——第一次机会,操作系统还不知道异常是否由应用程序处理。另见更新。 ---- @Ziplin:我已将其添加到回复中。
    猜你喜欢
    • 2011-01-02
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多