Linux下多线程的调试


多线程调试的基本命令(均在gdb命令行使用):

info threads ———— 显示当前可调试的所有线程。每一个线程都有自己的线程ID,显示结果中前面有*的表示当前调试的线程。

eg:

(gdb)info threads

ID    Target ID

3    Thread 0x——————(LWP 1235)

2    Thread 0x——————(LWP 1234)

*1    Thread 0x——————(LWP 1233)    //当前活动的线程

最前面的数字1、2、3表示线程ID

thread ID ———— 切换当前活动线程到ID指定的线程

thread apply ID1 ID2 command ———— 让一个或多个线程执行gdb命令command

thread apply all command ———— 让所有被调试线程执行gdb命令command

set schedular-locking off|on|step ———— off:调试线程时,其他线程也在运行;on:只有当前被调试线程执行;step:step在单步执行的时候,除了next过一个函数外,只有当前线程会执行。

GDB调试程序用法

GDB+GDBserver无源码调试Android 动态链接库的技巧

使用hello-gl2建立ndk-GDB环境(有源码和无源码调试环境)

在Ubuntu上用GDB调试printf源码

Linux下用GDB调试可加载模块

Ubuntu下使用GDB断点Go程序

本文永久更新链接地址:

相关内容