在使用gdb调试多线程程序的core文件时,可以按照以下步骤进行操作。这些步骤将帮助你确认系统环境和gdb版本支持多线程调试,生成包含多线程信息的core文件,并使用gdb进行调试。 1. 确认系统环境和gdb版本支持多线程调试 首先,确保你的系统环境和gdb版本支持多线程调试。大多数现代Linux发行版和gdb版本都支持多线程调试。你...
默认情况下调试多进程程序时gdb只会调试主进程,但是gdb也是支持多进程多线程同时调试的。只需设置follow-fork-mode(默认值:parent)和detach-on-fork(默认值:on)即可。 查询正在调试的进程:info inferiors 切换调试的进程: inferior<infer number> 查询线程:info threads 切换调试线程:thread &...gdb...
core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的,接下来我们通过一个案例观察怎么利用GDB调试core文件。 在命令行中键入 gdb <可执行文件> < core文件>: 进入gdb命令行中: 键入bt 可以查看程序终止线程的堆栈: 但是有时错误不是发生在这个堆栈上。键入 info threads 查看所有线程: 键入thread app...