在“info thread”命令的帮助下,我能够知道线程id和当前正在执行的线程。当我有一个或两个线程能够提醒每个线程的功能。基于此我能够执行我想要的线程。但是当我使用多个线程并且我想执行一个特定的函数时,我需要记住所有的函数,以便我可以给出相应的线程id来执行。它是不可能提醒所有线程及其函数名称。那么,有没有办法在GDB中列出线程及其函数名。?。
谢谢.. !!。
答案 0 :(得分:0)
找到了一些链接。他们似乎很有帮助:
答案 1 :(得分:0)
您可以使用thread apply all bt
命令。它将打印所有线程的回溯。您将在结束前和clone
系统调用之前的每个回溯中找到线程函数名称。
答案 2 :(得分:0)
我按Ctrl + L清除屏幕缓冲区
set height 0
thread apply all bt
如果列表很长,这将为所有线程转储回溯,但不会暂停(因为我们将窗口高度设置为0)。然后我将输出复制/粘贴到文本编辑器中进行检查。