也许这是正常情况,但我很困惑。
我正在从 Visual Studio 运行我的 C# 调试应用程序。 DebugDiag 设置为自动附加到进程。
我有一条规则从该应用程序收集故障转储,并且该规则定义未配置的第一次机会异常的操作应为“无”。
但是当应用程序崩溃时,当我查看转储文件时,它说存在第一次机会异常。
从答案到这个问题 https://stackoverflow.com/questions/564681/what-is-a-first-chance-exception,我理解“异常首先被抛出到调试器,然后被抛出到实际程序,如果不处理它,它会第二次被抛出到调试器”
那么为什么 DebugDiag 会在第一次出现异常时收集转储文件呢?
编辑
需要明确的是,我并不是想在这里修复损坏的代码。我试图理解为什么 DebugDiag 告诉我第一次机会异常导致我的代码崩溃。当然,根据定义,只有第二次机会的异常才会导致代码崩溃,即代码尚未处理的异常?
“crash”意味着进程终止并且 DebugDiag 生成故障转储文件。我在“启动而不调试”上运行代码的调试版本
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)