展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

jmap

  • 简介
Jmap (Memory Map for Java)命令⽤于⽣成堆转储快照。如果不使⽤ jmap 命令,要想获取 Java 堆转储快照,还有⼀些⽐较“暴⼒”的⼿段:
-XX: +HeapDumpOnOutOfMemoryError参数,可以让虚拟机在 OOM 异常出现之后⾃动⽣成 dump ⽂件,⽤于系统复盘环节

和 info 命令⼀样,jmap 有不少功能在 Windows 平台下都是受限的,除了⽣成 dump ⽂件的 -dump 选项
和⽤于查看每个类的实例、空间占⽤统计的 -histo 选项在所有操作系统都提供之外,其余选项都只能在Linux/Solaris 下使⽤
  • 测试
# 启动1个spring boot项目用于测试

# 查看项目的pid  
jps

# 查看堆
jmap -heap pid

# 显示堆中对象统计信息,包括类、实例数量、合计容量
jmap -histo pid

# linux中使用
jmap -histo pid|more

B :byte
C : char
I :Int
  • ⽣成 Java 堆转储快照
windows: 
jmap -dump:format=b,file=d:\a.bin 进程id

mac: 
jmap -dump:format=b,file=/Users/daniel/deskTop/a.bin 进程id
posted @ 2022-09-15 14:39  DogLeftover  阅读(81)  评论(0编辑  收藏  举报