假设我们有一个由非托管 C++ 应用程序调用的 C#。来电者的代码不可用。
public void MethodCalledByUnmanagedCode()
{
try
{
DoWork()
}
catch {}//assume we swallow exception, no logging or anything
}
在这种情况下,在任何情况下,有没有办法让任何异常冒泡到非托管 C++?
您的代码可能会引发ThreadAbortException
.
ThreadAbortException 是一个可以被捕获的特殊异常,但它会在 catch 块结束时自动再次引发。
在正常情况下,还有一些像 StackOverflowException 这样的异常处理程序永远不会发生。
查看详细信息C# 捕获堆栈溢出异常。