GDB除錯多執行緒程式

2021-06-16 15:57:40 字數 409 閱讀 2296

info threads 

顯示當前可除錯的所有執行緒,每個執行緒會有乙個gdb為其分配的id,後面操作執行緒的時候會用到這個id。 前面有*的是當前除錯的執行緒。

thread id

切換當前除錯的執行緒為指定id的執行緒

break thread_test.c:123 thread all

在所有執行緒中相應的行上設定斷點

讓乙個或者多個執行緒執行gdb命令command

讓所有被除錯執行緒執行gdb命令command

set scheduler-locking off|on|step

其中:off 不鎖定任何執行緒,也就是所有執行緒都執行,這是預設值

on 只有當前被除錯程式會執行

step 在單步的時候,除了next過乙個函式的情況以外,只有當前執行緒會執行

Gdb 除錯多執行緒程式

gdb多執行緒除錯的基本命令。info threads顯示當前可除錯的所有執行緒,每個執行緒會有乙個gdb為其分配的id,後面操作執行緒的時候會用到這個id。前面有 的是當前除錯的執行緒。thread id切換當前除錯的執行緒為指定id的執行緒。break thread test.c 123 thr...

gdb除錯多執行緒程式總結

原文 先介紹一下gdb多執行緒除錯的基本命令。info threads顯示當前可除錯的所有執行緒,每個執行緒會有乙個gdb為其分配的id,後面操作執行緒的時候會用到這個id。前面有 的是當前除錯的執行緒。thread id切換當前除錯的執行緒為指定id的執行緒。break thread test.c...

gdb多執行緒除錯

先介紹一下gdb多執行緒除錯的基本命令。info threads顯示當前可除錯的所有執行緒,每個執行緒會有乙個gdb為其分配的id,後面操作執行緒的時候會用到這個id。前面有 的是當前除錯的執行緒。thread id切換當前除錯的執行緒為指定id的執行緒。break thread test.c 12...