Histogram -> 可以列出内存中的对象,对象的个数以及大小。
Dominator Tree -> 可以列出那个线程,以及线程下面的那些对象占用的空间。
Top consumers -> 通过图形列出最大的object。
Leak Suspects -> 通过MA自动分析泄漏的原因。
Objects -> 类的对象的数量,这个对象被创建了多少个
Shallow Heap -> 一个对象内存的消耗大小,不包含对其他对象的引用
Retained Heap -> 是shallow Heap的总和,也就是该对象被GC之后所能回收到内存的总和,内存分析通常以 retained heap 为主
List objects -> with incoming references:查看这个对象持有的外部对象引用
List objects -> with outcoming references:查看这个对象被哪些外部对象引用
Path To GC Roots -> exclude all phantim/weak/soft etc. references:查看这个对象的GC Root,不包含虚、弱引用、软引用,剩下的就是强引用。从GC上说,除了强引用外,其他的引用在JVM需要的情况下是都可以 被GC掉的,如果一个对象始终无法被GC,就是因为强引用的存在,从而导致在GC的过程中一直得不到回收,因此就内存溢出了。
Path To GC Roots -> exclude weak/soft references:查看这个对象的GC Root,不含弱引用和软引用所有的引用.
Merge Shortest path to GC root :找到从GC根节点到一个对象或一组对象的共同路径