0%

jmap

1
2
3
4
5
6
7
8
9
jmap [option] vmid

options:
-dump 生产Java堆转储快照. 格式为: -dump:[live, ]format=b, file=<filename>, 其中live子参数说明是否只dump出存活的对象
-finalizerinfo 显示在F-Queue中等待Finalizer线程执行finalize方法的对象. 只有在Linux/Solaris平台下有效
-heap 显示Java堆详细信息, 如使用哪种回收器, 参数配置, 分代状况等. 只有在Linux/Solaris平台下有效
-histo 显示堆中对象统计信息, 包括类, 实例数量, 合计容量
-permstat 以ClassLoader为统计口径显示永久代内存状态. 只有在Linux/Solaris平台下有效
-F 当虚拟机进程对-dump选项没有响应时, 可使用这个选项强制生成dump快照. 只有在Linux/Solaris平台下有效
1
2
3
4
5
6
7
8
9
# 查看进程中占用资源最大的前 10 对象
# -histo:live live 表示仅输出存活的对象; 如果没有指定则输出所有对象
jmap -histo:live $pid | head -n 10

# 查看堆使用情况
jmap -heap $pid

# 将内存使用情况输出到文件
jmap -dump:format=b,file=heapdump $pid