问题在主题中。让我解释一下“为什么”。我在Red Hat Enterprise Linux Server 7.7上运行我的应用程序。当我使用htop检查性能时,我发现很少有线程占用太多的CPU。我添加了一些调试日志,发现在我的代码中没有创建具有高CPU的线程。因此,我假设这些CPU贪婪线程是在我正在使用的第三方共享库中创建的。所以有一个问题:假设我有一个线程id (17405)。有没有办法找出是哪个共享库启动了这个线程?
如果这个问题太琐碎,我向您道歉--我不久前才开始使用Linux操作系统。
谢谢
发布于 2020-02-22 01:51:37
实际上,我找到了看起来很满意的解决方案。我启动gdb,连接到我的进程,然后我可以列出进程"info thread“中的所有线程,然后我选择我感兴趣的线程,然后-瞧-我可以通过发出bt命令来查看堆栈跟踪。我认为是作品
https://stackoverflow.com/questions/60324607
复制相似问题