jvm-监控指令-jstack
格式:
jstack [option] vmid
选项:
-l 除了堆栈信息外,显示关于锁的附加信息。
作用:
生成虚拟机当前时刻的线程快照。
目的:
定位线程长时间停顿的原因,比如线程间死锁、死循环、请求外部资源导致的长时间等待。
使用步骤:
1
. 获取进程id。 常用命令:
ps -aux | grep java
jps -lv
top
2
. 得到线程快照。
jstack -l 进程id > 文件
1
3
. 根据进程id,得到线程的资源使用情况。
top -H -p 进程id > 文件
2
4
. 将耗时的线程id,转化为
16
进制数的表示形式。
5
. 根据
16
进制的线程id,在线程快照中查找。