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