DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

多线程调试

(一)多线程调试命令

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

(225条消息) GDB多线程调试(调试命令+调试演示)_Xtiz的博客-CSDN博客

(225条消息) GDB多进程调试(调试命令+调试演示)_gdb调试进程_Xtiz的博客-CSDN博客

 
posted on 2023-04-21 11:02  DoubleLi  阅读(286)  评论(0编辑  收藏  举报