JVM:MAT内存泄漏检测原理

文章目录

一、介绍

MAT提供了称为支配树(Dominator Tree)的对象图。支配树展示的是对象实例间的支配关系。在对象引用图中,所有指向对象B的路径都经过对象A,则认为对象A支配对象B。

  • 支配树中对象本身占用的空间称之为浅堆(Shallow Heap)。
  • 支配树中对象的子树就是所有被该对象支配的内容,这些内容组成了对象的深堆(Retained Heap),也称为保留集(Retained Set)。深堆的大小表示该对象如果可以被回收,能释放多大的空间
  • MAT就是根据支配树,从叶子节点向根节点遍历,如果发现深堆的大小超过了整个堆内存的一定比例阈值,就会将其标记成内存泄漏的"嫌疑对象。
相关推荐
q***69771 天前
java进阶1——JVM
java·开发语言·jvm
码力码力我爱你1 天前
C++静态变量依赖关系
java·jvm·c++
Java爱好狂.1 天前
2025全年Java面试真题总结!
java·jvm·高并发·多线程·java面试·后端开发·java八股文
嘟嘟w1 天前
JVM(Java 虚拟机):核心原理、内存模型与调优实践
java·开发语言·jvm
G皮T1 天前
【Java】Java 运行时数据区域(一):名词概念
java·jvm·runtime·运行时·运行时数据区域
小年糕是糕手1 天前
【C++】C++入门 -- inline、nullptr
linux·开发语言·jvm·数据结构·c++·算法·排序算法
七夜zippoe1 天前
JVM调优实战:从GC日志分析到参数配置(Xmx, Xms, XX:+)
java·jvm·gc·jit·垃圾回收器
IUGEI1 天前
【后端开发笔记】JVM底层原理-内存结构篇
java·jvm·笔记·后端
未若君雅裁2 天前
JVM基础总结
java·jvm·java-ee
心态特好2 天前
JVM 如何判断‘对象 / 类该回收
jvm