3
是否可以在每個線程的基礎上禁用gdb斷點?gdb禁用特定線程的斷點
我有一個斷點,它會在後臺工作線程中每100毫秒觸發一次。但我需要在任何其他線程中調試相同的位置。因此,僅在後臺工作線程中禁用斷點纔會很酷。可能嗎?
也許我可以加入一些特製的條件,這個斷點禁用線程,當我知道線程的數量?
是否可以在每個線程的基礎上禁用gdb斷點?gdb禁用特定線程的斷點
我有一個斷點,它會在後臺工作線程中每100毫秒觸發一次。但我需要在任何其他線程中調試相同的位置。因此,僅在後臺工作線程中禁用斷點纔會很酷。可能嗎?
也許我可以加入一些特製的條件,這個斷點禁用線程,當我知道線程的數量?
Gdb提供了兩個便利變量,$_thread
和$_gthread
(後者相當新穎),可用於引用當前線程的條件。
所以,一旦工作者線程已經開始,你可以使用info thread
找到它的編號。然後你可以改變你的斷點(假設這個例子是斷點2),例如:
(gdb) cond 2 $_thread != 57
謝謝。這是我正在尋找的。 –