K:Eclipse Memory Analyzer的安装和使用

Eclipse Memory Analyzer分析内存使用总结 前言 内存泄露和内存溢出的区别:内存泄露从老年代的增长情况看是缓慢上升的, 最终达到老年代上限才会导致溢出,有些内存泄露可能需要很长的时间发生, 所以说内存泄露更隐蔽, 不像内存溢出那样容易暴露(内存溢出直接抛出OOM), 而且内存长时间得不到释放会导致服务性能越来越差、gc时间变长、响应变慢: 1. 安装 在Eclipse help -> Eclipse Marketplace下搜索Memory: 按照操作流程安装完成,重启Eclipse. 2. 利用MAT分析内存堆 获取Hea. 阅读详情

@转载自:http://blog.youkuaiyun.com/wizard_rp/article/details/73266194


简单描述一下Eclipse中Memory Analysis toos插件的安装和使用,以下简称MAT。

1. 安装

  在Eclipse help -> Eclipse Marketplace下搜索Memory:
搜索MAT插件

图 1-1 搜索MAT插件

  按照步骤安装完成重启即可。

2. 测试

测试代码

/**
 * 
 * @description HeapOOM
 * <p>Java堆异常测试</p>
 * <code>VM Args: -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError</code>
 * <p>以上参数的含义是:限制Java堆大小为20MB,不可扩展</p>
 * <p>通过此参数可以让虚拟机在出现内存溢出异常时Dump出当前的内存堆转储快照</p>
 * @author Yampery
 * @date 2017年6月16日 下午11:42:46
 */
public class HeapOOM {

    static class OOMObject { }

    public static void main(String[] args) {

        List<OOMObject> list = new ArrayList<OOMObject>();
        while (true) {
            list.add(new OOMObject());
        } /// while end
    } /// main
} ///~

/**
 * 运行结果:
 * java.lang.OutOfMemoryError: Java heap space
 * Dumping heap to E:\job\java_pid4056.hprof ...
 * Heap dump file created [28010445 bytes in 0.373 secs]
 * Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
 */

Eclipse中的运行参数设置

-Dfile.encoding=UTF-8    
-Xms20m -Xmx20m ##设置堆大小20m,并将最小和最大值设置相等,避免扩展
-XX:+HeapDumpOnOutOfMemoryError ##dump出当前的内存堆转储快照
-XX:HeapDumpPath=E:\job   ##指定路径(转储文件还是挺大的)
-XX:SurvivorRatio=8    ## 存活比2:8



运行参数

图2-1 eclipse运行参数设置

3. 打开堆转储快照

  通过上述可以看见堆转储快照文件是.hprof 文件。 打开MAT
打开界面

图 3-1 设置界面显示MAT

打开dump

图 3-2 打开或获取dump

打开dump文件
  默认打开Leak Memory(泄漏)
这里写图片描述

图 3-3 dump文件


Eclipse Memory Analyzer入门教程 结构总览 记住下面名词的解释: Shallow Heap:代表当前对象占用的内存空间; Retained Heap:代表当前对象被回收后所能释放的内存空间大小。 一些操作: List objects -> with outgoing references :列出包含哪些对象; List objects -> with ingoing references :列出被哪些对象包含; 第一... 阅读详情

相关推荐

如何打开本地网络的防火墙端口(Windows版)解决ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。问题

ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。 最开始在遇到这个报错的时候十分不解,后来经过思考,有可能是服务器端口占用,或者并没有放行。因此搜查问题的关键是要先去排查问题。 在搜索栏输入控制面板 选择防火墙 选择开关 保证这些选项是开着的 选择高级设置 新建规则 创建协议端口 选择端口 允许连接 点击下一步 创建规则后点击下一步(后命名) 选择任意端口ALL即可 问题排查完毕!socket创建网络通信时,有读者

weixin_46900108的博客 9万+

(译)关于使用Eclipse Memory Analyzer的10点小技巧

作者 Rave_Tian 2016.02.01 17:56* 字数 2988 阅读 520评论 0喜欢 0 分析和理解应用的内存使用情况是开发过程中一项不小的挑战。一个微小的逻辑错误可能会导致监听器没法被释放回收,最终导致可怕的内存溢出问题。甚至有时你已经释放了所有空对象,但是你的应用却多消耗了十倍甚至百倍的内存导致效率很低。 幸运的是,Eclipse Memory...

weixin_30252709的博客 355

Springboot(五十六)SpringBoot3集成SkyWalking

Dskywalking.collector.backend_service:表示skywalking的collector服务的IP及端口。注意上图中红框标注的位置,我们可以根据启动Springboot项目启动时候控制台输出的ID进行筛选。注意上图中红框标注的位置,我们可以根据启动Springboot项目启动时候控制台输出的ID进行筛选。其他的版本的 APM 地址(这个我不需要,我们是在docker中部署的,留给有需要的同学)其他的java 版本的 Agents 地址。

camellia的博客 2601

Eclipse Memory Analyzer(MAT)使用方法

Eclipse Memory Analyzer是Eclipse官方提供的用于分析JVM堆栈信息的工具 1,加载dump文件 加载完后选择Leak Suspects,会列出堆中占用比较大的可达对象,看到内存泄漏的可疑点以及细节信息,然后需要对实际代码进行分析,确认内存泄漏问题 查看OverView datails中的Unreachable Objects Histogram可以查看不可达对象 Biggest Objects by Retained Size包含几个比较大对象,如果没有对象超过

lgd0602的博客 6080

Palantir 产品架构深度解析:从本体到AI的决策智能平台

本文深度解析了Palantir决策智能平台的核心产品架构。其核心在于构建企业级的“本体”(Ontology),即业务世界的“数字孪生”,通过数据、逻辑、操作三层抽象统一语义。平台以此为基础,通过Foundry构建数字孪生,并通过AIP(人工智能平台)实现本体增强生成(OAG),将AI深度融入业务,形成从数据感知、智能分析到行动执行的完整决策闭环。

ooo22的博客 736

【MIT-BEVFusion代码解读】第四篇:融合特征fuser和解码特征decoder

的大小,实际上源代码也是这么做的。最后将得到两个分支的特征进行。,第一个特征使用卷积降低通道数即可,第二个则需要反卷积来提升。所以backbone只有两个分支,都是5个卷积模块组成。的长和宽都减半至90,然后在经过5个相同的。将通道降至128,后面再接5个相同的。,将通道数128上至256,并且将。特征进行融合,这里使用的。部分由两部分组成,分别是。,这个分支首先经过第一个。,然后再卷积得到 =>提取特征,最后得到特征。得到了两个大小不同的。

非晚非晚的博客 2958

使用Eclipse Memory Analyer分析内存溢出位置

看下文前可以先了解一下JVM内存溢出的四种情况 该段代码在无限循环中创建对象 public class OOM { public static void main(String[] args) { List<Object> n = new ArrayList<Object>(); while (true) { n.add(new Object()...

越努力越幸运 617

17|CI/CD 集成与质量门禁:让精准测试进入发布流水线

本文讲解精准测试如何接入 CI/CD 流水线,并通过质量门禁辅助发布决策。测试开发工程师。Java 后端开发工程师。质量平台 / DevOps 平台建设者。想了解精准测试落地方法的技术负责人。

专注 AI 精准测试平台实战落地,分享从代码 Diff 到回归决策的完整工程闭环。主张“先建数据链路,再上 AI 智能”,让测试从“靠经验”走向“基于风险”。 68

Eclipse Memory Analyzer使用技巧

分析和了解应用程序的内存使用情况是一项具有挑战性的操作。细微的 logic 错误可能导致侦听器永远不会被处理,最终导致可怕的 OutOfMemory 错误。即使您的应用程序正确处理了所有未使用的对象,它仍可能需要比所需多 10 倍或 100 倍的内存。幸运的是,Eclipse Memory Analyzer (MAT) 可...

qq_35485206的博客 4827

【Bluetooth蓝牙开发】九、BLE协议之GATT

1、开篇词 2、蓝牙开发入门 3、蓝牙协议栈总览 4、蓝牙协议栈——物理层 5、蓝牙协议栈——链路层 6、蓝牙协议栈——传输层 7、蓝牙协议栈——L2CAP协议 8、蓝牙协议栈——ATT协议 9、蓝牙协议栈——GATT协议 10、蓝牙通信流程分析 11、蓝牙协议栈——Bluez交叉编译 12、蓝牙调试工具汇总

Donge's Blog 4765

YOLOv8改进,YOLOv8主干网络替换为FasterNet(全网独发手把手教学,助力涨点)

FasterNet的整体架构由四个分层阶段组成,每个阶段包含一组FasterNet模块,并在前面加一个嵌入或合并层。最后三层用于特征分类。每个FasterNet模块内部,一个PConv层后跟两个PWConv层,为了保持特征多样性并降低延迟,归一化和激活层仅在中间层之后进行,其中,PConv 是一种快速高效的卷积操作,通过仅对部分输入通道应用卷积滤波器,而保持其余通道不变,从而减少了计算量和内存访问。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 2016

用eclipse memory analyzer分析heapdump

用eclipse memory analyzer分析heapdump 目录 一、工具介绍... 1 二、heapdump实例分析... 7 三、javacore实例分析... 12   一、工具介绍 1.术语 Strong reference(强引用):就是我们new出来的对象,但是还是被持有的应用,当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,

汪迎春的专栏 6056

【温室气体】GOSAT 数据产品

【温室气体】GOSAT 数据产品

WW、forever的博客 238

Eclipse Memory Analyzer使用

  Eclipse Memory Analyzer是Eclipse提供的内存分析工具,是一个快速、功能丰富的JAVA heap分析工具,它可以帮助查找java进程dump后的文件。 下载:https://www.eclipse.org/mat/downloads.php Mac中打开会报错,参看提示的错误log有如下内容: … java.lang.IllegalStateException: Th...

ZERO 966

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Eclipse Memory Analyzer tool(MAT)分析内存泄露1

前言 在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的。所以找出是什么原因造成OutOfMemoryError非常重要。现在向大家引荐Eclipse Memory Analyzer tool(MAT),来化解我们遇到的难题。如未说明,本文均使用Java 5.0 on Windows XP SP3环境。 ...

adxj46627377的博客 142

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

打开分析 查看堆快照文件_eclipse配置和使用memory Analyse分析内存

1. 安装在Eclipse help -> Eclipse Marketplace下搜索Memory:图 1-1 搜索MAT插件按照步骤安装完成重启即可。2. 测试代码准备测试代码/**** @description HeapOOM* Java堆异常测试* VM Args: -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError* 以上参数的含义是:限...

weixin_32073375的博客 839

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

使用Memory Analyzer tool(MAT)分析内存泄漏(一)

<br /><br />前言<br /> <br />在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的。所以找出是什么原因造成OutOfMemoryError非常重要。现在向大家引荐Eclipse Memory Analyzer tool(MAT),来化解我们遇到的难题。如未说明,本文均使用Java 5.0 on Windows XP SP3环境。<br /> <br />为什么用MAT<br /> <br />之前的观点,我认为

青峰专栏 1865

解决Mac启动Eclipse Memory Analyzer报错问题

下载Eclipse Memory Analyzer在mac上打开的时候出现以下异常: !SESSION 2017-05-13 15:25:56.717 ----------------------------------------------- eclipse.buildId=unknown java.version=1.8.0_111 java.v...

weixin_33912445的博客 2099

内存泄露探查 Memory Analyzer

内存泄露探查 Eclipse Memory Analyzer

Learning 284

Eclipse中安装MemoryAnalyzer插件及使用

一、简介   Eclipse作为JAVA非常好用的一款IDE,其自带的可扩展插件非常有利于JAVA程序员的工作效率提升。   MemoryAnalyzerTool(也叫MAT)是一款JAVA虚拟机内存映像分析工具,可以在JAVA程序运行的时候有程序抛出的异常加上已经设置好的参数(-XX:+HeapDumpOnOutOfMemory)调试出内存泄漏或者异常的位置以及原因跟踪,Memeor

hezuohuoban882的博客 1524

jni开发 - 使用Memory Analyzer tool(MAT)分析内存泄漏(一)

前言   在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的。所以找出是什么原因造成OutOfMemoryError非常重要。现在向大家引荐Eclipse Memory Analyzer tool(MAT),来化解我们遇到的难题。如未说明,本文均使用Java 5.0 on Windows XP SP3环境。   为

Mrknowledge 2250

性能分析工具之-- Eclipse Memory Analyzer tool(MAT)(一)

前言 在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的。所以找出是什么原因造成OutOfMemoryError非常重要。现在向大家引荐Eclipse Memory Analyzer tool(MAT),来化解我们遇到的难题。如未说明,本文均使用Java 5.0 on Windows XP SP3环境。  

287

MyEclipse安装Eclipse Memory Analyzer插件,并进行错误文件分析流程

转自 http://www.cnblogs.com/nb44c/p/5218880.html 在看深入JVM虚拟机一书(p50,2.4 实战OutOfMemoryError),有一个Java堆溢出的例子,使用到了Eclipse Memory Analyzer插件,由于自己现在使用的是MyEclipse,所以就需要在MyEclipse上添加插件。具体步骤如下: 1.先安装MAT插

u012799221的博客 4139

使用Memory Analyzer tool(MAT)分析内存泄漏(一)

前言 在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的。所以找出是什么原因造成OutOfMemoryError非常重要。现在向大家引荐Eclipse Memory Analyzer tool(MAT),来化解我们遇到的难题。如未说明,本文均使用Java 5.0 on Windows XP SP3环境。 为什么用MAT...

天高任鸟飞,海阔凭鱼跃 2116

内存问题的分析与内存分析工具MAT(Memory Analyzer Tool)的使用

安装 关于Eclipse Memory Analyzer的安装,网上有很多教程,我选择的是直接通过Eclipse插件的形式安装最新的Memory Analyzer。步骤如下: 打开eclipse-&gt;Help-&gt;Install new software-&gt;work with右边的Add...显示下图: 这里使用的网址是:http://download.eclipse....

我的博客 5297
上一篇: K:java枚举的常见用法
下一篇: K:利用System.getProperties()方法获得的虚拟机进程的信息
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值