java之深浅堆

2019-11-02  本文已影响0人  任嘉平生愿

浅堆

表示一个对象结构所占用的大小(对象头+实例数据+对齐填充,不包括内部引用 对象大小)

深堆

表示一个对象被 GC 回收后,可以真实释放的内存大小(保留空间)对象

对象 

对象=对象头 + 实例数据 + 对齐填充

对象头

标记部分包括 hashcode、gc 分代年龄、锁状态标志、线程持有锁、偏向线程锁id,偏向时间戳,这一部分在32位机器上为 4 byte,64 位机器上为 8byte

分析内存分析

1.用jmp拿到进程的dump文件

2.用MAT工具导入dump文件分析堆内存溢出。

Java之内存泄露分析 - 简书

JVM基本常识

上一篇 下一篇

猜你喜欢

热点阅读