如何打印在POSIX OS(例如Linux)的C ++应用程序中运行的线程列表(最好是名称)?
答案 0 :(得分:1)
您可以获取目录/proc/self/task
以获得线程ID的列表。请注意,这是特定于Linux的。不能移植到所有POSIX。
您可以使用pthread_getname_np
获取每个线程的名称。线程的名称默认为程序的名称。这是glibc特定的功能;不能移植到所有POSIX甚至所有Linux。
答案 1 :(得分:-1)
其他做相同事情的选项:
1)如果您具有应用程序名称
使用ps -C <application name> -T
-C
表示命令名称应紧随其后-T
列出所有带有SPID的线程2)如果您具有进程ID,
使用ps -p <process id> -T
-p
表示进程ID应该紧随其后-T
列出所有带有SPID的线程