linux - 如何在 GDB 中列出线程及其相应的函数?

标签 linux multithreading gdb

借助“info thread”命令,我可以知道线程id和当前正在执行的线程。当我有一个或两个线程时,我可以提醒每个线程的功能。基于此,我可以执行我想要的线程。但是当我使用多个线程并且我想执行一个特定的函数时,我需要记住所有函数,以便我可以给出适当的线程id来执行。不可能提醒所有线程及其函数名称。那么,有什么方法可以列出线程及其在 GDB 中的函数名称。?。

谢谢你..!!.

最佳答案

我按 Ctrl+L 清除屏幕缓冲区

set height 0
thread apply all bt

这将转储所有线程的回溯,但如果列表很长,则不会暂停(因为我们将窗口高度设置为 0)。然后,我将输出复制/粘贴到文本编辑器中进行检查。

关于linux - 如何在 GDB 中列出线程及其相应的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25161364/

相关文章:

Linux:基于另一个模块加载模块

linux - 错误 : Creating directories for/. niogit/system.git 在 Wildfly-8.1.0.Final 上部署 jbpm-console.war 失败

java - 渲染循环开始后 libgdx 中的一次性线程

c - 管道命令时 gdb 不会停止

c++ - Proc*C 应用程序在 Oracle 12.2 中崩溃

crash - 调试崩溃时在gdb中的<Optimized OUT>

C++ MP3、WAV 和 AAC(低级)解码器?

linux - 在 Linux 中运行 ls doc*.txt 和 ls doc?*.txt 和 ls doc*?.txt 有什么不同?

c++ - 等待 atomic_bool

java - Thread.join() 未按预期工作