我在想为什么我的多线程应用程序会崩溃。因此,我使用SetUnhandledExceptionFilter为未处理的异常安装了一个处理程序,然后在处理程序中展开并打印堆栈跟踪。它工作……某种程度上。我试过很多互联网上的例子,但我总是得到这样的东西:从来没有错误发生的实际位置。任何人都可以给给予一个真实的工作的例子打印堆栈跟踪一个未经处理的异常在Windows上?非常感谢。
vdgimpew1#
如果它发生在您用于开发的机器上:
-O0
-ggdb3
如果它发生在客户端机器上,那么它是一个更复杂的情况,请参阅:
ix0qys7i2#
我有确切的问题,它得到了固定的降级MinGW到7.5。最新版本的MinGW的Boost存在一个问题,导致无法打印堆栈跟踪:
*updating to the latest gcc-mingw(x64), stacktrace doesn't seem to build anymore
你必须去一个相当旧的版本,这可能是不舒服的。这是我发现的唯一能够为MinGW打印堆栈跟踪的解决方案。
2条答案
按热度按时间vdgimpew1#
如果它发生在您用于开发的机器上:
-O0
),-ggdb3
标志传递给编译器)。如果它发生在客户端机器上,那么它是一个更复杂的情况,请参阅:
ix0qys7i2#
我有确切的问题,它得到了固定的降级MinGW到7.5。最新版本的MinGW的Boost存在一个问题,导致无法打印堆栈跟踪:
*updating to the latest gcc-mingw(x64), stacktrace doesn't seem to build anymore
你必须去一个相当旧的版本,这可能是不舒服的。
这是我发现的唯一能够为MinGW打印堆栈跟踪的解决方案。