首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JVM故障分析及性能优化实战(VII)——使用MAT的Histogram和Dominator Tree定位溢出源

上一篇文章概括的介绍了JVM Heap Dump文件生成的方式以及内存分析工具MAT的概要功能,今天讲解如何使用MAT的Histogram和Dominator Tree两个视图,定位到内存溢出源。...Dominator Tree视图 点击工具栏上的 ?...图标可以打开Dominator Tree(支配树)视图,在此视图中列出了每个对象(Object Instance)与其引用关系的树状结构,同时包含了占用内存的大小和百分比。 ?...通过Dominator Tree视图可以很容易的找出占用内存最多的几个对象(根据Retained Heap或Percentage排序),和Histogram类似,可以通过不同的方式进行分组显示: ?...定位溢出源 Histogram视图和Dominator Tree视图的角度不同,前者是基于类的角度,后者是基于对象实例的角度,并且可以更方便的看出其引用关系。

1.7K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android内存优化(五)详解内存分析工具MAT

    再往下看,Actions一栏的下面列出了MAT提供的四种Action,其中分析内存泄漏最常用的就是Histogram和Dominator Tree。...3.1 Dominator Tree Dorminator Tree意味支配树,从名称就可以看出Dorminator Tree更善于去分析对象的引用关系。 ?...Dominator Tree中列出了很多MainActivity实例,MainActivity是不该有这么多实例的,基本可以断定发生了内存泄漏,具体内存泄漏的原因,可以查看GC引用链。...3.2 Histogram Histogram与Dominator Tree不同的是,Dominator Tree是在对象实例的角度上进行分析,注重引用关系分析,而Histogram则在类的角度上进行分析...将第一个和第二个hpof文件的Dominator Tree或者Histogram添加到Compare Basket中,如下图所示。 ?

    3K80

    糟糕,线上OOM了该怎么办,JVM heap dump快速分析

    * Actions 这里显示了几种常用到的操作,算是功能的快捷方式,包括 Histogram、Dominator Tree、Top Consumers、Duplicate Classes,具体的含义和用法见下面...c、Dominator Tree(支配树):列出Heap Dump中处于活跃状态中的最大的几个对象,默认按 retained size进行排序,因此很容易找到占用内存最多的对象。...如果说需要定位内存泄露的代码点,我们可以通过Dominator Tree菜单选项来进行排查,因此仔细观察和分析才能够找到问题所在),如图1-2所示: ?...图1-4 泄露可疑点(1) 查看信息初步怀疑与J2EEsession超时检查有关,并涉及Hashtable实例的system class loader类,进一步通过Dominator Tree(支配树)

    6.1K20
    领券