3
是否可以在每个线程的基础上禁用gdb断点?gdb禁用特定线程的断点
我有一个断点,它会在后台工作线程中每100毫秒触发一次。但我需要在任何其他线程中调试相同的位置。因此,仅在后台工作线程中禁用断点才会很酷。可能吗?
也许我可以加入一些特制的条件,这个断点禁用线程,当我知道线程的数量?
是否可以在每个线程的基础上禁用gdb断点?gdb禁用特定线程的断点
我有一个断点,它会在后台工作线程中每100毫秒触发一次。但我需要在任何其他线程中调试相同的位置。因此,仅在后台工作线程中禁用断点才会很酷。可能吗?
也许我可以加入一些特制的条件,这个断点禁用线程,当我知道线程的数量?
Gdb提供了两个便利变量,$_thread
和$_gthread
(后者相当新颖),可用于引用当前线程的条件。
所以,一旦工作者线程已经开始,你可以使用info thread
找到它的编号。然后你可以改变你的断点(假设这个例子是断点2),例如:
(gdb) cond 2 $_thread != 57
谢谢。这是我正在寻找的。 –