网上文档很多,但最初都有问题。整理一份,作为备份。使用过程:开发代码写完后,对可能出现内存溢出的代码,添加配置文件,生成.hprof文件,用memory Analyzer分析排查问题,且泄漏内存大小可配置。具体安装测试一条龙如下:

1.安装:

help-》install new software -》work with :  这里填写eclipse版本:  Kepler - http://download.eclipse.org/releases/kepler(注意这里不同版本可能地址不同!!!)--》General Purpose Tools--》找到”Memory Analyzer“和”Memory Analyzer(Charts)“,并选取。安装完后重启eclipse.

2.提前修改配置:注意:由于后续分析过程需要大量内存,所以,后面打开分析后的文件时,可能会报内存溢出,需要调整eclipse内存,注意:网上很多都是骗人的,必须到eclipse目录下找到eclipse.ini在最后:-Xms2048m -Xmx2048m 这样既可,想动态看见eclipse运行内存:

3.编写内存泄漏测试代码

大致是往ArrayList中循环添加大量字符串。这对20M的内存设置来说肯定是会溢出的。

1     @Test
2     public void testOutOfMemory(){
3         List<String> list = new ArrayList<String>();
4         for(int i=0;i<10000000;i++){
5            String str = new String();
6            list.add(str);
7         }
8     }

4.运行参数配置:Run as-->Run Configurations-->Arguments-->VM arguments:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError,配置20M当做内存溢出上限,方便测试,具体大小大家可以自己控制。-XX:+HeapDumpOnOutOfMemoryError 配置后,当存溢出就会生成文件。如下图:,测试代码运行后,控制台输出,见下图:.

5.代码运行后,eclipse下刷新工程可见,生成了hprof文件,双击打开(注意,此处就是第二步设置参数的原因)。默认选择第一项,finish即可。,具体分析:,上图可见,是主线程的ArrayList内存溢出了。

Eclipse Memory Analyzer,内存泄漏插件,安装使用相关推荐

  1. 一次使用 Eclipse Memory Analyzer 分析 Tomcat 内存溢出

    最近,线上生产系统突然频繁的 JVM 内存报警!但本系统近期内并没有上线改动! 为了能查清内存报警的原因,使用 Eclipse Memory Analyzer tool(MAT)对 JVM Dump ...

  2. 一次使用Eclipse Memory Analyzer分析weblogic内存溢出

    前言 在平时开发.测试过程中.甚至是生产环境中,有时会遇到OutOfMemoryError,Java堆溢出了,这表明程序有严重的问题.我们需要找造成OutOfMemoryError原因.一般有两种情况 ...

  3. 内存映像分析工具Eclipse Memory Analyzer

    1. Eclipse Memory Analyzer安装 Help ->Eclipse Marketplace,搜索Memory,点击install,->confirm->同意证书内 ...

  4. 使用Eclipse Memory Analyzer对Tomcat进行内存分析

    测试环境 Java : JDK1.6 Tomcat: Tomcat 5.5 Eclipse Memory Analyzer:EMA 1.2.1(直接去Eclipse下载,无需安装哈) 获得Heap D ...

  5. Eclipse Memory Analyzer以及内存泄露的原因

    Eclipse Memory Analyzer是一个非常棒的堆内存分析工具,是JDK自带的堆分析工具jhat的一个非常好的替代品,能够快速地定位Java内存泄露的原因.       可能有的同学会问, ...

  6. 使用 Eclipse Memory Analyzer 进行堆转储文件分析

    概述 对于大型 JAVA 应用程序来说,再精细的测试也难以堵住所有的漏洞,即便我们在测试阶段进行了大量卓有成效的工作,很多问题还是会在生产环境下暴露出来,并且很难在测试环境中进行重现.JVM 能够记录 ...

  7. Eclipse Memory Analyzer 使用技巧

    Eclipse Memory Analyze 是Java 堆转储文件分析工具,可以帮助你发现内存漏洞和减少内存消耗. 概述 对于大型 JAVA 应用程序来说,再精细的测试也难以堵住所有的漏洞,即便我们 ...

  8. jvm性能分析工具之-- Eclipse Memory Analyzer tool(MAT)

    性能分析工具之-- Eclipse Memory Analyzer tool(MAT)(一) 前言 性能分析工具之-- Eclipse Memory Analyzer tool(MAT)(一)中介绍了 ...

  9. Eclipse Memory Analyzer 的使用

    原文出处:郭霖,http://blog.csdn.net/sinyu890807/article/details/42238633?locationNum=4 Eclipse Memory Analy ...

  10. Eclipse Memory Analyzer(MAT) 使用总结

    前言 在日常的开发工作中,遇到生产环境报OOM的问题时,你首先会想到采用哪些方式并使用什么样的工具对OOM问题进行分析,定位和解决呢? 实际现场环境无非有这么两种,第一种,如果项目所在的生产服务器不允 ...

最新文章

  1. 《跟菜鸟学Cisco UC部署实战》-第 1 章 规划-课件(一共12章,免费)
  2. 面试官:说说 Java 中的 Unsafe 和 CAS
  3. 计算机等级考试初级网络工程师,计算机等级网络工程师考试内容
  4. 正则表达式真的很骚,可惜你不会写!
  5. webflux切面拦截权限,webflux整合aop,webflux获取request
  6. 算法训练营04-map,set,dequeue,stack
  7. Linkerd2安装和使用
  8. 每周荐书:机器学习、Java虚拟机、微信开发(评论送书)
  9. 说说命令提示符:tcping命令、tcp协议和ping命令
  10. 电脑用来测试网段信号的软件,WiFi信号分析仪PC版
  11. python逆时针画圆_python 逆时针
  12. KUBERNETES安装及访问web页面
  13. 分形吧matlab,使用matlab画分形图.pdf
  14. 【vue3仿网易云音乐app】歌单列表以及歌单界面
  15. EOJ 3344.送命题
  16. 在oracle数据库中存储数据库的文件是,Oracle数据库,oracle
  17. css里面的网格布局
  18. B-SOiD 系统运行报错全记录
  19. creo打不开stp文件_Creo怎么打开stp格式的文件?
  20. stm32项目平衡车详解(stm32F407)下

热门文章

  1. plc串口通讯 qt_Qt 编写串口调试助手
  2. 节气朔望时刻计算和日食月食预测
  3. 计算多个不同鞋码对应的脚长——C语言
  4. 步进电机控制系统设计
  5. 流体机械特性曲线 水轮机运转特性曲线
  6. cmake中的INTERFACE_INCLUDE_DIRECTORIES是干什么的
  7. 微信隐藏/显示右上角菜单接口
  8. 八、【中级篇】数码管驱动(74HC138,74HC595)
  9. Ubuntu 使用命令向QQ邮箱发送邮件
  10. 微星 GL62M 7RD SSD+HDD双硬盘 安装双系统(win10+ubuntu 16.04)