多线程调试

(一)多线程调试命令

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

如果文章有错别字,或者内容有错误,或其他的建议和意见,请您联系我指正,非常感谢!!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐