https://cloud.tencent.com/developer/article/1452072
jmap jvm自带命令行工具,可用于了解系统运行时的对象分布,常用命令格式如下
jmap常用命令
1.jmap -h
2. jmap -heap
查看java堆的信息以及垃圾回收算法等
示例:jmap -heap 1
查看进程号为1的java堆的信息以及垃圾回收算法等
3.jmap -histo <pid>
打印当前java堆中所有对象的实例数和大小等,加了live选项则只打印存活的对象
// 命令行输出类名、类数量数量,类占用内存大小,
// 按照类占用内存大小降序排列
示例:
jmap -histo 1(进城号)
3. jmap -dump:<dump-options>
dump-options主要有:
- live 只dump存活的对象,如果不加则会dump所有对象
- format=b 表示以二进制格式
- file=filepath 输出到某个文件中
把java堆中的对象dump到本地文件,然后使用第三方工具进行分析,如MAT,JProfile,IBM的分析工具等
例如:
jmap -dump:format=b,file=xxx.bin JVM 进程号ID(获取JVM heap dump 文件)(xxx.bin生成的heap dump文件)
示例:
jmap -dump:live,format=b,file=dump.hprof <pid>
jmap -dump:format=b,file=dump.hprof <pid>
// 生成堆内存转储快照,在当前目录下导出dump.hrpof的二进制文件, // 可以用eclipse的MAT图形化工具分析 jmap -dump:live,format=b,file=dump.hprof <pid> 复制代码
jinfo 命令格式
1.jinfo <pid>
作者:分布式系统架构
链接:https://juejin.im/post/5b6b986c6fb9a04fd1603f4a
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。