如何在Linux中命名线程?

我有一个用C / C++编写的多线程Linux应用程序。我为线程选择了名称。为了帮助调试,我希望这些名称在GDB,“顶部”等中可见。这可能吗?如果可以,怎么办?

(有很多[原因可以知道线程名称。现在我想知道哪个线程占用了50%的CPU(由“ top”报告)。在调试时,我经常需要切换到其他线程-目前,我必须做“ thread apply all bt”,然后浏览回溯输出的页面以找到正确的线程。

该视窗解决方案就在这里

; 什么是Linux?

回答:

Posix线程?

这显然不会编译,但是会给您一个去哪里狩猎的想法。我什至不确定它的PR_命令正确,但是我认为是。有一阵子了…

  #include <sys/prctl.h>

prctl(PR_SET_NAME,"<null> terminated string",0,0,0)

以上是 如何在Linux中命名线程? 的全部内容, 来源链接: utcz.com/qa/406433.html

回到顶部