根据CPU消耗定位问题代码
- 摘要:查看进程id,线程id;下面这条命令可以得出哪个线程对应哪个进程ps-eopid,lwp-Le:显示所有的进程o:自定义显示f:全格式h:不显示标题l:长格式w:宽输出a:显示终端上的所有进程,包括其他用户的进程u:有效用户r:只显示正在运行的进程x:显示没有控制终端的进程pid:进程idlwp:线程idruser:用户idppid:父进程idpsr:运行该线程的CPU的序号args:命令行参数L:显示进程,并尽量显示LWP和NLWP(线程个数)查看线程占用CPU情况topd
- 标签:问题 代码 定位问题 定位
查看进程id,线程id;下面这条命令可以得出哪个线程对应哪个进程
ps -eo pid,lwp -L
e:显示所有的进程
o:自定义显示
f:全格式
h:不显示标题
l:长格式
w:宽输出
a:显示终端上的所有进程,包括其他用户的进程
u:有效用户
r:只显示正在运行的进程
x:显示没有控制终端的进程
pid:进程id
lwp:线程id
ruser:用户id
ppid:父进程id
psr:运行该线程的CPU的序号
args:命令行参数
L:显示进程,并尽量显示LWP和NLWP(线程个数)
查看线程占用CPU情况
top
d:后接整个界面更新的描述,默认5秒
p:指定某个PID来进行查看检测
top执行过程中可以使用的按键
?:显示在top当中可以输入的按键
H:查看每个线程占用CPU的情况
M:内存占用排序
P:cpu占用排序
N:以PID来排序
k:给某个PID一个信号
1:显示每个CPU的详细情况
查看java进程
jps -lm
jps [options] [hostid]
options可以用
-q :安静模式
-m :输出传递给main方法的参数
-l :显示完整路径
-v :显示传递给JVM的命令行参数
-V :显示通过flag文件传递给JVM的参数
-J :和其他Java工具类似用于传递参数给命令本身要调用的java进程
hostid是主机id,默认localhost。
查看当前虚拟机的线程栈
jstack -l vmid
-F 强制输出线程堆栈
-l 显示关于锁的附加信息
-m 显示本地方法堆栈