1. 查找占CPU最多的线程
步骤1: 查找出占用CPU最高的java线程pid
可以找到%CPU
项最高的一个pid,就是该线程,假设pid是18250,将其转换为16进制:0x474a
步骤2: jstack查看各个线程栈
找到nid为0x474a的线程栈信息,其中包含了该线程的name,OK定位到了
2. 查看一个进程运行了多久
|
|
实际上可以打印的信息有很多:
3. 统计一个进程的线程数
方法1: ps
方法2:/proc
proc 伪文件系统,它驻留在 /proc 目录,这是最简单的方法来查看任何活动进程的线程数。 /proc 目录以可读文本文件形式输出,提供现有进程和系统硬件相关的信息如 CPU、中断、内存、磁盘等等
上面的命令将显示进程
4. 查看某个进程的线程
方法1:
SID
栏表示线程ID,而CMD
栏则显示了线程名称
方法2:top
可以使用-H
开启线程查看模式,如果要查看特定进程的线程:
方法3:
要在htop
中启用线程查看,请开启htop
,然后按<F2>
来进入htop
的设置菜单。选择“设置”栏下面的“显示选项”,然后开启树状视图
和显示自定义线程名
选项。按<F10>
退出设置
Htop的具体使用后续会专门写一篇记录一下。
5. 查看进程被运行在哪个CPU上
方法1:taskset
方法2:ps
方法3:top