GDB 中是否有与 WinDbg 等效的命令!process 0 7
?
我想提取转储文件中的所有线程以及它们在 GDB 中的回溯。info threads
不输出堆栈跟踪。那么,有没有这样的命令呢?
GDB 中是否有与 WinDbg 等效的命令!process 0 7
?
我想提取转储文件中的所有线程以及它们在 GDB 中的回溯。info threads
不输出堆栈跟踪。那么,有没有这样的命令呢?
一般使用backtrace来获取当前线程的堆栈,但是如果有必要获取所有线程的堆栈跟踪,使用下面的命令。
thread apply all bt
有没有这样的命令?
thread apply all where
当使用多个线程进行调试时,切换到特定线程号并仅获取该线程的回溯也很有用。
来自 GNU GDB 线程文档
出于调试目的,GDB 将它自己的线程号——一个按线程创建顺序分配的小整数——与程序中的每个线程相关联。
用法:
info threads
然后确定要查看的线程。
thread <thread_id>
最后,仅对该线程使用回溯:
bt
如果您的进程正在运行:
pstack $pid