我的进程未在调试器上运行,而是在崩溃发生时生成了一个核心文件。
更新:崩溃是由异常引起的。来自throw(),即使在main()范围内也没有处理。
当我在调试器中附加并运行时,它确实会正确生成回溯信息,但在核心文件中却没有。
问题可能是操作系统在将控制权传递给terminate之前解开堆栈,因此当terminate生成SIGABT时,它没有有关先前堆栈的信息。
我正在进行压力测试的内存测试中遇到此崩溃,所以无法在gdb下运行此项测试。
该怎么办?有什么解决方法吗?
ulimit -c
并获得截断的核心转储,或2. 尝试使用与用于生成它的系统库不同的系统库分析core
。如果您在不同的计算机上生成和分析core
,或者在之间升级了系统库,则可能会发生这种情况。