可以使用 JDK 自带的 jstat 命令来查看 JVM 内存情况。jstat 命令可以显示出 JVM 中堆内存、非堆内存、虚拟机进程内线程数量等信息。
具体语法为:
复制代码
jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
其中,<option> 表示要查询的内容,例如 -gc 表示垃圾回收情况,-gcutil 表示垃圾回收统计信息;<vmid> 表示要查询的 JVM 进程 ID 或者启动时指定的唯一字符串(如果有);<interval> 表示查询间隔时间,默认单位是毫秒;<count> 表示查询次数,默认为永久循环查询。
例如,要查看某个 JVM 进程的堆内存使用情况,可以使用以下命令:
复制代码
jstat -gcutil <vmid>
该命令将输出类似下面的结果:
复制代码
S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
0.00 0.00 27.58 65.32 90.94 85.04 28 0.406 2 0.