在linux下进行业务开发的时候,尤其是在应用第三方包的时候,首先要分析进程中的线程数目,查看进程的线程数对于开发或者是运维都是一个必备的技能。
进程的id 也就是 pid,由于linux中线程和进程都有各自的进程描述符,本质上进程和线程都是 clone()产生的,对于线程来说只要不查看线程所在进程的组号(tid),我们都把线程的id 也叫做pid。
ps -aux |grep test :查看test进程的pid
ps -T -p 58065 :查看进程号58065 的所有线程的情况,只不过一个事静态的,另一个是动态的罢了。
top -T -p 58065
另一个神器是 htop:交互式的界面
cat /proc/58065/status 这种方法也是可以的
接下来看htop界面
扫描二维码关注公众号,回复:
890090 查看本文章
然后介绍中间部分:从左到右依次介绍各项代表的含义。 PID 表示进程的标识号。 USER 表示运行此进程的用户。 PRI 表示进程的优先级。 NI 表示进程的优先级别值,默认的为0,可以进行调整。 VIRT 表示进程占用的虚拟内存值。 RES 表示进程占用的物理内存值。 SHR 表示进程占用的共享内存值。 S 表示进程的运行状况,R表示正在运行、S表示休眠,等待唤醒、Z表示僵死状态。 %CPU 表示该进程占用的CPU使用率。 %MEM 表示该进程占用的物理内存和总内存的百分比。 TIME+ 表示该进程启动后占用的总的CPU时间。 COMMAND 表示进程启动的启动命令名称。
下面详细介绍下帮助文档,介绍各个参数代表的含义。 F1 或者h 查看帮助文档。 F2 或者S 设置htop / 或者F3 搜索进程。 \ 或者F4 增量进程过滤器。 t 或者F5 显示树形结构。 F6 +,- 按照某个指标进行排序。 ] 或者F7 可提高nice值可以提高对应进程的优先级 [ 或者F8 可减少nice值可以提高对应进程的优先级 k 或者 F9 杀掉进程。 q 或者F10 结束htop。 u 只显示一个给定的用户的进程。 H 显示或隐藏用户线程。 K 显示或隐藏内核线程。 F 跟踪进程。 P 按CPU 使用排序。 M 按内存使用排序。 T 按Time+ 使用排序。。。。。