-
我在最开始学gdb的时候是十分抗拒的,调试没有界面?不能用鼠标点点点?怎么看各种变量的值。。。但是又不得不用gdb,因为linux下有界面的调试还是挺麻烦的。
-
学会了之后觉得很简单,当然。。只会基本的,n下一步,p输出变量,b下端点,l查看。。
-
我在之前意识到自己可能要gdb调试多线程的时候也是十分抗拒的,直到现在也十分抗拒。。一个线程都整不明白,多个怎么调?但是没办法,工作总要做啊。学会之后一切都变得简单了 ~
1. 常用命令
- 显示所有的可调试进程;
gdb> info threads
- 我这里有4个可以调试的进程,gdb会为每个进程分配个ID,后面会用,*代表当前调试的主进程,我这里是main。
- 当然也可以在系统中查看线程,首先看一下自己程序的进程号,我这里是17438.
pasted-20.pngps -ef
然后用查看这个进程的所有线程,和gdb查看的结果是一样的。
pasted-21.pngps -Lf 17438
- 切换到某个进程
thread ID
- 切换的ID之前info的时候会显示
网友评论