在Linux上显示正在运行的进程的线程ID

在上Linux,“ ps -T”可以显示正在运行的进程的线程信息:

# ps -T 2739

PID SPID TTY STAT TIME COMMAND

2739 2739 pts/0 Sl 0:00 ./spawn_threads

2739 2740 pts/0 Sl 0:00 ./spawn_threads

2739 2741 pts/0 Sl 0:00 ./spawn_threads

在proc伪文件系统上,有一个task目录来记录线程信息:

# ls -lt /proc/2739/task

total 0

dr-xr-xr-x 7 root root 0 Jun 28 14:55 2739

dr-xr-xr-x 7 root root 0 Jun 28 14:55 2740

dr-xr-xr-x 7 root root 0 Jun 28 14:55 2741

由于C++17,有一个文件系统库可用于访问文件系统,因此我利用该库遍历/proc/$pid/task文件夹以获取进程的线程ID:

......

std::filesystem::path p{"/proc"};

p /= argv[1];

p /= "task";

......

uint64_t thread_num{};

std::vector<:string> thread_id;

std::filesystem::directory_iterator d_it(p);

for (const auto& it : d_it)

{

thread_num++;

thread_id.push_back(it.path().filename().string());

}

std::cout << "Process ID (" << argv[1] << ") has " << thread_num << " threads, and ids are:\n";

for (const auto& v : thread_id)

{

std::cout << v << '\n';

}

......

生成并运行它:

# ./show_thread_ids 2739

Process ID (2739) has 3 threads, and ids are:

2739

2740

2741

linux 线程id 进程id,在Linux上显示正在运行的进程的线程ID相关推荐

  1. cupsd进程_linux pstree命令显示正在运行的进程的进程树状图

    功能描述 使用pstree命令可以显示正在运行的进程的进程树.pstree命令ASCII 字符显示树状结构,清楚地表达进程之间的相互关系.如果不指定进程号或用户名,那么会把系统启动时的第一个进程看作是 ...

  2. Linux下使用tee既在屏幕上显示输出,又把输出写进文件

    Linux下的tee是一个很好用的工具,可以把重定向屏幕输出到文件的同时在屏幕上显示输出 使用示例如下: command | tee stdout.log 这里有一个需要注意的坑点,上面的命令只是把标 ...

  3. php怎么创建进程,在php中为长时间运行的进程创建后台进程

    好的,请原谅我,如果这是另一个问题的重复,但在搜索后我还没有找到一个明确的答案.我基本上想要做的是让我的php web应用程序触发一些事件(如电子邮件或报告生成器)可能需要几分钟才能完成并立即将控制权 ...

  4. linux 识别僵尸进程,Linux上寻找并杀死僵尸进程

    转载: http://blog.csdn.net/shanzhizi/article/details/47320595 linux服务器上,多少会出现一些僵尸进程,下面介绍如何快速寻找和消灭这些僵尸进 ...

  5. Linux查hudi服务的进程,Linux查看非root运行的进程

    Linux查看非root运行的进程 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ ps -U root -u root -N PID TTY TIME CMD ...

  6. Linux中查看所有正在运行的进程

    你可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息.ps命令能提供一份当前进程的快照.如果你想状态可以自动刷新,可 ...

  7. linux查询python的进程树_如何在Linux中查看所有正在运行的进程

    你可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息.ps命令能提供一份当前进程的快照.如果你想状态可以自动刷新,可 ...

  8. 如何在Linux中查看所有正在运行的进程

    你可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息.ps命令能提供一份当前进程的快照.如果你想状态可以自动刷新,可 ...

  9. 在Linux中查看所有正在运行的进程

    可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息. ps命令能提供一份当前进程的快照.如果想状态可以自动刷新,可以 ...

最新文章

  1. golang 删除目录所有内容
  2. 58金融产品经理董宁:互金产品设计21问
  3. 生成msk文件的用处_Yotta企业云盘“小”功能大用处企业办公好伙伴
  4. Android之DrawText详解
  5. php 云端桌面,开源云桌面程序DZZ v1.2新版功能预览
  6. haproxy+keepalived实现高可用K8S集群部署
  7. C++中数字与字符串之间的转换
  8. Python数据分析案例-药店销售数据分析
  9. 已知鸡兔共35只c语言,行测数量关系技巧:巧解鸡兔同笼问题
  10. for函数python_for函数python
  11. IDEA卸载和删除注册表
  12. 基于排序变换混沌置乱算法的图像加密系统
  13. 计算机管理用户组不见了,win7系统计算机管理本地用户和组不见了的解决方法...
  14. unity中单位是米还是厘米_Unity3D 单位
  15. TECO状态的生产订单结算到在制品怎么办?
  16. MEM/MBA英语基础(02) 句子成分基础
  17. 组合数学-排列组合整理
  18. 久闻大名的Fragment
  19. 什么是主从复制?mysql主从复制?redis主从复制?
  20. 知然算法【2】灰色模型GM(1,1)

热门文章

  1. EMC测量的常用计量单位分贝(dB)及其换算
  2. 那些很厉害的人,是如何度过职场迷茫的?
  3. Databricks文档01----Azure Databricks初探
  4. 比小米12 Pro还好?Redmi K50 Pro+屏幕细节曝光:2K高分直屏
  5. 小米集团:回购460万股,耗资9818万港元
  6. 苹果第二代自研M系列芯片MacBook Pro有望在未来几周上市
  7. Switch OLED版被玩家吐槽:屏幕大了价格暴涨 性能未升级
  8. 1499元!魅族Watch“天青”配色正式首销:与手机完全互联互通
  9. iPhone 12/13正面对比图曝光:祖传大刘海终于有所改变
  10. 缺货警告!小米这款手机已被骂惨...