linux

参考: https://blog.csdn.net/qq_33589510/article/details/104351433

jcmd -l  或 jps  //列出java pid

jcmd pid GC.run //执行垃圾回收

jmap -heap pid //查询java内存占用情况

jmap -histo pid //查询Java对象实例以及占用的内存大小

jmap

生成堆快照和对象的统计信息。

-histo 打印每个class的实例数目,内存占用,类全名信息. VM的内部类名字开头会加上前缀”*”. 如果live子参数加上后,只统计活的对象数量

jmap -histo:live pid

jmap -histo pid

jmap -histo pid | grep "xxxxx"

jps

类似Linux的ps,但jps只列出Java的进程。可方便查看Java进程的启动类、传入参数和JVM参数。直接运行,不加参数,列出Java程序的进程ID及Main函数名称

jstat

观察Java应用程序运行时信息的工具,详细查看堆使用情况以及GC情况

jstat -GC PID 显示gc信息,查看gc的次数及时间                                                                                                                                                 

jstack 

导出Java应用程序的线程堆栈,jstack可以检测死锁

jstack -l <pid> 查看线程

原文地址:https://www.cnblogs.com/zincredible/p/14771027.html