使用Eclipse Memory Analyzer 进行JAVA内存泄露分析
一,安装 Eclipse Memory Analyzer
在Memory Analyzer的官网找到 update site的地址:
然后:在Eclipse界面--->Help--->Install New Software--->Add--->Add Reposity ,并在 location 中输入:Update Site地址,即可安装。
二,生成 堆转储文件
这里使用 jmap 命令生成堆转储文件。
Ctrl+Alt+Delete 打开Windows任务管理器,点击:进程--->找到当前正在运行的Eclipse/MyEclipse 进程的PID。【如果没有显示PID,可以点击:查看--->选择列-->勾选PID
知道进程的PID之后,就可以使用下面的命令生成 dump file了:
jmap -dump:format=b,file=<dumpfile_name> <pid>
三,使用Eclipse Memory Analyzer 插件分析堆转储文件
当生成堆转储文件之后,使用Eclipse打开该文件,即可进行分析了。具体步骤:Eclipse的界面:File--->Open File--->找到堆转储文件即可。
补充:Windows下查看进程:tasklist | findstr pid
Windows下查看端口:netstat -ano | find "port_number"
参考资料:
使用 Eclipse Memory Analyzer 进行堆转储文件分析
https://www.dynatrace.com/resources/ebooks/javabook/memory-leaks/
使用Eclipse Memory Analyzer 进行JAVA内存泄露分析的更多相关文章
- 【Android】Eclipse Memory Analyzer 进行堆内存溢出分析
MAT 不是一个万能工具,它并不能处理所有类型的堆存储文件. 不同厂家的 JVM 所生成的堆转储文件在数据存储格式以及数据存储内容上有很多区别,但是比较主流的厂家和格式,例如 Sun, HP, ...
- 使用 Eclipse Memory Analyzer 进行简单内存泄漏分析
Java 内存泄露的根本原因: 保存了不可能再被访问的变量类型的引用.因此我们的目的就是要找出这样的引用. 1.测试代码: public class MainActivity extends Acti ...
- eclipse memory analyzer对系统内存溢出堆文件解析0(转)
前言 在平时工作过程中,有时会遇到OutOfMemoryError,我们知道遇到Error一般表明程序存在着严重问题,可能是灾难性的.所以找出是什么原因造成OutOfMemoryError非常重要.现 ...
- eclipse memory analyzer对系统内存溢出堆文件解析(转)
本文转之:https://blog.csdn.net/rachel_luo/article/details/8992461 前言 性能分析工具之-- Eclipse Memory Analyzer t ...
- 使用 Eclipse Memory Analyzer 进行堆转储文件分析
Eclipse Memory Analyzer(MAT)是著名的跨平台集成开发环境 Eclipse Galileo 版本的 33 个组成项目中之一,它是一个功能丰富的 JAVA 堆转储文件分析工具,可 ...
- mat 使用 分析 oom 使用 Eclipse Memory Analyzer 进行堆转储文件分析
概述 对于大型 JAVA 应用程序来说,再精细的测试也难以堵住所有的漏洞,即便我们在测试阶段进行了大量卓有成效的工作,很多问题还是会在生产环境下暴露出来,并且很难在测试环境中进行重现.JVM 能够记录 ...
- [Android Memory] 使用 Eclipse Memory Analyzer 进行堆转储文件分析
转载地址:http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-ma/index.html Eclipse Memory Analyzer ...
- 使用Eclipse Memory Analyzer Tool(MAT)分析故障
Eclipse Memory Analyzer Tool(MAT)是一个强大的基于Eclipse的内存分析工具,可以帮助我们找到内存泄露,减少内存消耗. 工作中经常会遇到一些内存溢出.内存泄露等问题, ...
- Java内存泄露分析和解决方案及Windows自带查看工具
Java内存泄漏是每个Java程序员都会遇到的问题,程序在本地运行一切正常,可是布署到远端就会出现内存无限制的增长,最后系统瘫痪,那么如何最快最好的检测程序的稳定性,防止系统崩盘,作者用自已的亲身经历 ...
随机推荐
- 日常工作中 Oracle12c参数的处理:
1. Oracle12c 修改过的参数 alter system set result_cache_mode=manual; alter system ; alter system set " ...
- Qt开发之信号槽机制
一.信号槽机制原理 1.如何声明信号槽 Qt头文件中一段的简化版: class Example: public QObject { Q_OBJECT signals: void customSigna ...
- Python 2和Python 3的编码问题
在Python2中,字符串无法完全地支持国际字符集和Unicode编码.为了解决这种限制,Python2对Unicode数据使用了单独的字符串类型.要输入Unicode字符串字面量,要在第一个引号前加 ...
- TCPDF打印从入门到精通
1. TCPDF的模块导入 TCPDF的官网为https://tcpdf.org 官方文档有几十个例子:详情参看官方文档! 2. 使用 TCPDF打印 例如:横版表格打印并自动分页 /** * 打印 ...
- liunx速查
文件和目录 Linux 主要目录速查表 /:根目录,一般根目录下只存放目录,在 linux 下有且只有一个根目录,所有的东西都是从这里开始 当在终端里输入 /home,其实是在告诉电脑,先从 /(根目 ...
- 设计模式【PHP案例】
内容来源: 波客 菜鸟教程 策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改.这种类型的设计模式属于行为型模式. 在策略模式中,我们创建表示各种策略的对 ...
- 【Linux】MGR部署脚本
脚本没有完善,现在只有上半部分的基础环境搭建 [准备条件] 1.三个节点的防火墙关闭 2.原有mysql卸载删除 3.文件夹名字: mgr 所有的源码包都放在mgr的文件夹下 4.文件位置: /roo ...
- UVA-1572
解题思路: 之前看到的骚操作,主要思想就是把两个面合在一起看成两个点相连,最后只要找到一个环就可以无限克隆这个环使得无限延迟. 把符号变成数字如A-变为0,A+变为1,则0^1=1 ,这两个符号可以通 ...
- 【 HDU - 4456 】Crowd (二维树状数组、cdq分治)
BUPT2017 wintertraining(15) #5A HDU 4456 题意 给你一个n行n列的格子,一开始每个格子值都是0.有M个操作,p=1为第一种操作,给格子(x,y)增加z.p=2为 ...
- Ubuntu16.04中禁用UTC解决双系统时间问题
解决方法一 sudo hwclock -w --localtime 解决方法二 timedatectl set-local-rtc 1 解决方法三 修改/etc/adjtime文件中的UTC,为LOC ...