Tag: ++

如何在Linux中命名一个线程?

我有一个用C / C ++编写的multithreadingLinux应用程序。 我select了我的线程名称 。 为了帮助debugging,我希望这些名字在GDB,“top”等中可见。这是可能的,如果是的话,怎么样? (有足够的理由知道线程名称,现在我想知道哪个线程占用了50%的CPU(由'top'报告),而且在debugging时我经常需要切换到另一个线程 – 目前我必须做“ thread apply all bt ”,然后通过backtrace输出页面来查找正确的线程)。 Windows解决scheme在这里 ; 什么是Linux的?

Linux 3.0:使用pipe道stdin / stdout执行subprocess

在Linux 3.0 / C ++下: 我想要一个function,执行以下操作: string f(string s) { string r = system("foo < s"); return r; } 上述显然不起作用,但你明白了。 我有一个strings,我想通过作为应用程序“foo”的subprocess执行的标准input,然后我想将其标准输出logging到stringr,然后返回它。 我应该使用什么linux系统调用或posix函数的组合?