我得到一个递归调用一个抛出堆栈溢出异常的方法.第一个调用被try catch块包围,但没有捕获异常.
堆栈溢出异常是否以特殊方式运行?我可以正确捕获/处理异常吗?
注意:如果相关:
主线程中没有抛出异常
代码抛出异常的对象由Assembly.LoadFrom(...)手动加载.CreateInstance(...)
在.NET中遇到一些StackOverflowExceptions之后,我注意到它们完全绕过了.NET提供的未处理的异常处理程序(Application.ThreadException/AppDomain.UnhandledException).这非常令人不安,因为我们在这些异常处理程序中有关键的清理代码.
有没有办法克服这个问题?