多线程调试
(一)多线程调试命令
shell的命令:
(1)查看当前运行的进程:ps aux | grep book
(2)查看当前运行的轻量级进程:ps -aL | grep book
(3)查看主线程和子线程的关系:pstree -p 主线程id
gdb的命令:
(1)查看可切换调试的线程:info threads
(2)切换调试的线程:thread 线程id
(3)只运行当前线程:set scheduler-locking on
(4)运行全部的线程:set scheduler-locking off
(5)指定某线程执行某gdb命令:thread apply 线程id gdb_cmd
(6)全部的线程执行某gdb命令:thread apply all gdb_cmd
(二)多线程调试演示
以调试book.c为例,内容如下:
编译,生成可执行文件
$ gcc -g -o book book.c
开始调试命令
$ gdb book
1.查看/切换调试的线程
开始调试
2.只运行当前线程
3.指定某线程执行gdb命令
下一篇:GDB多进程调试(调试命令+调试演示)
参考:
www.freecplus.net
https://www.bilibili.com/video/BV1ei4y1V758?p=4
https://freecplus.net/b72113dda88a43b48728e0552fd8a74c.html