文章目录

  • MAT
  • 图解

MAT

在使用MAT分析对象的时候有两个重要的概念

outgoing references ,这个对象引用了哪些对象
incoming references ,哪些对象引用了这个对象

图解

代码

public class A {private C c1 = C.getInstance();
}public class B {private C c2 = C.getInstance();
}publicclass C {private static C myC = newC();public static C getInstance() {returnmyC;}private D d1 = new D();private E e1 = new E();   }public class D {}public class E {}public class SimpleExample {public static void main (String argsp[]) throws Exception {A a = new A();B b = new B();}
} 

示例图

执行命令

jmap -dump:live,format=b,file=3144.bin 3144

分析
在直方图这里输入全限定类名

选择 incoming得到

选择 outgoing

MAT outgoing references / incoming references相关推荐

  1. JVM 内存分析神器 MAT: Incoming Vs Outgoing References 你真的了解吗?

    点击上方蓝色字体,选择"设为星标" 优质文章,及时送达 了解 Eclipse MAT 中 incoming and outgoing 引用之间的区别. Eclipse MAT(内存 ...

  2. Android内存泄漏检测工具使用手册

    Android内存泄漏检测工具使用手册 前言 LeakCanary 在Android中接入LeakCanary LeakCanary内存泄漏分析 内存泄漏上报到服务端 Shark Shark分析当前应 ...

  3. 生成和查看dump文件

    在日常开发中,即使代码写得有多谨慎,免不了还是会发生各种意外的事件,比如服务器内存突然飙高,又或者发生内存溢出(OOM).当发生这种情况时,我们怎么去排查,怎么去分析原因呢? 1. 什么是dump文件 ...

  4. JProfiler分析dump文件

    文章目录 1.安装JProfiler(本文使用JProfiler11) 2.从服务器上将dump文件拿下来 3.使用JProfiler打开 4.查看Classes 5.查看Reference 6.查看 ...

  5. MAT工具学习,incoming reference和outgoing reference,Shallow Heap和Retained Heap

    MAT工具学习 incoming reference和outgoing reference Shallow Heap和Retained Heap 常用工具 一般思路 incoming referenc ...

  6. 深入理解java中的Soft references amp;amp; Weak references amp;amp; Phantom reference

    引言 Ethan Nicholas 在他的一篇文章中说:他面试了20多个Java高级工程师,他们每个人都至少有5年的Java从业经验,当他问这些工程师对于Weak References 的理解时,只有 ...

  7. Git学习笔记(2) --- References探寻

    在上一篇文章Git学习笔记(1) --- 内部存储模式中,已经说了git的内部存储模式以及.git/objects文件中的内容,这一篇文章主要讲讲git内部的references. Reference ...

  8. 内存分析工具MAT的使用

    原文链接:http://www.jianshu.com/p/d8e247b1e7b2 MAT简介 MAT(Memory Analyzer Tool),一个基于Eclipse的内存分析工具,是一个快速. ...

  9. envi 文件 生成mat_JVM 内存分析工具 MAT 的深度讲解与实践——入门篇

    1. MAT 工具简介 MAT(全名:Memory Analyzer Tool),是一款快速便捷且功能强大丰富的 JVM 堆内存离线分析工具.其通过展现 JVM 异常时所记录的运行时堆转储快照(Hea ...

最新文章

  1. Git之深入解析工作流程、常用命令与Reset模式分析
  2. mysql with 查询_mysql笔记(6)-多表查询之with
  3. 领域驱动设计系列 (六):CQRS
  4. alidoing --使用JS实现多语言框架、喜欢的请进、、瓦特平台!
  5. 04、Flutter FFI 字符串
  6. 调整report_timing输出格式
  7. 不礼让行人怎么抓拍的_不礼让行人百分百抓拍吗?不礼让行人如何申诉成功
  8. fatal: unable to access github.com schannel failed to receive handshake, SSL/TLS connection failed
  9. 更高效的记录方式,讯飞智能录音笔体验出色
  10. 【Linux】目录权限和默认权限
  11. sql join备忘
  12. C++ 算法题题解——多重循环
  13. 高考作文做个标题党,有何不好!
  14. GBase 8s中LTRIM函数的用法
  15. 超参数及其优化办法:验证集
  16. 「蚂蚁金服」热搜的背后:「李开复」到底是不是口误?
  17. 网络攻击之信息收集阶段
  18. bootstrap-table样式修改
  19. dBm与dB,如何来求和?
  20. python实现火车票监控

热门文章

  1. 100条最有意思的名言
  2. CF--1000D - Yet Another Problem On a Subsequence
  3. 智能电表是如何实现远程监控的?
  4. 利用python+scrapy+mysql爬取虎扑NBA球员数据存入数据库
  5. TennisWorld
  6. php中常用的设计模式视频,PHP设计模式视频
  7. cp2102驱动下载链接
  8. mysql安装bus error_如何解决mysql安装bus error问题
  9. C#操作word的一些基本方法(word打印,插入文件,插入图片,定位页眉页脚,去掉横线)...
  10. Hololens2开发入门(一)环境搭建