JVM Process Status Tool,显示虚拟机进程。
用法:jps [-q] [-mlvV]
参数说明
例子:jps
、jps -l
用法:jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
参数说明
例子:jstat -gcutil -h2 -t 15754 100 5
,表示监控进程号15754的垃圾收集统计值,每隔100ms输出一行,总共输出5次,每输出2次需要重新输出标题。
输出的指标说明
JVM Configuration info,可以实时查看和实时修改虚拟机参数。
用法:jinfo [option] <pid>
参数说明
例子:jinfo 15754
、jinfo -flags 15754
JVM Memory Map,用来生成堆栈dump文件。
用法:jmap [option] <pid>
参数说明
例子:jmap -heap 15754
、jmap -histo:live 15754
、jmap -dump:live,file=.\heap_dump.hprof 15754
用来生成Java虚拟机当前时刻的线程快照,方便定位线程长时间停顿的问题,比如死锁、死循环、长时间等待等。
用法:jstack -F [-m] [-l] <pid>
参数说明
例子:jstack -l 15754
JVM Heap Analysis Tool,用来分析jmap生成的堆栈日志,生成HTML文件。一般会用可视化工具来分析堆栈日志,比如MAT。
JDK建议使用 jcmd 替代 jstack、jinfo、jmap 等命令。
例子