[英]get the backtrace before unwinding the stack
我的进程没有在调试器上运行,而是在发生崩溃时生成一个核心文件。 更新:崩溃是由于异常而发生的。 从 throw() 开始,即使在 main() 范围内也未处理。
当我附加它并在调试器中运行它时,它确实会正确生成回溯,但在核心文件中却没有。
问题可能是操作系统在传递控制以终止之前展开堆栈,因此当终止生成 SIGABT 时,它没有关于前一个堆栈的此类信息。
我因为压力内存测试而崩溃,所以我无法在 gdb 下运行它。
该怎么办 ? 任何走动
问题可能是操作系统在传递控制以终止之前展开堆栈
Linux 操作系统没有这样的事情。
您没有提供相关详细信息,但核心转储中“坏”堆栈跟踪的两个最常见原因是:
ulimit -c
并获得截断的核心转储,或core
系统库不同的系统库来分析core
。 如果您在不同的机器上生成和分析core
,或者如果您在两者之间升级了系统库,就会发生这种情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.