MAT工具详解

本文介绍了Java的JVisualVm与MAT工具在内存分析中的应用,重点讲解了MAT的强大功能,如全局信息、直方图、浅内存和深内存视图、支配树以及LeakSuspect等,帮助开发者有效诊断和解决内存泄漏问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

Java自带的JVisualVm可以用来分析Java堆内存,可以用来排查内存泄漏和内存浪费的问题,但是功能不是特别强大, MAT(Memory Aanlysis Tool)是一款更优的工具。

MAT功能

功能组

image-20240414184827598
全局信息

image-20240414185623190

直方图

按照类的数量倒序的视图。

image-20240414185720681

Shallow Heap: 浅内存,即类本身占用的内存。

Retained Heap:深内存,即类包括自身的和 引用的内存。

支配树

对象 按照其引用的内存size 倒序的视图

image-20240414190229326

Leak suspect

image-20240414190716899

点击 details 查看明细

image-20240414191218125

其他菜单

在Dominate tree 上,任一对象实例上,右键,可以查询引用

List Objects -> with outgoing references:这个对象 持有 哪些 对象的引用。

List Objects -> with incomingreferences:这个对象的引用 被 哪些 对象持有。

show Objects by class -> with outgoing references:这个对象 持有 哪些 对象的引用,按类分组。

show Objects by class -> with incomingreferences:这个对象的引用 被 哪些 对象持有,按类分组。

Java Collections:对集合对象的分析

附录

参考

MAT的下载地址:https://download.eclipse.org/mat/1.4/update-site/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值