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