快过年啦~最近两个月一直在忙,没日没夜的敲代码,想着一定要在年前更新一篇。
今天介绍一下使用Eclipse MemoryAnalyzer 分析内存溢出问题,最近公司代码被测试出有卡顿问题,分析应该是OOM导致的,于是找到了这个工具,果然找到了一些模块destory之后仍被其他类引用到,无法释放。
首先,百度一下,Memory Analyzer (Eclipse MAT)是一个跨平台的开源工具,您不仅可以用它来分析内存问题,也可以用来监控整个 Java 应用程序的状态和行为。通过读取应用程序运行时由 Java 运行时环境生成的转储文件快照,Memory Analyzer 使您能够分析那些调试代码可能无法发现的复杂问题。下载一下这个工具,解压后点击.exe运行,这个时候可能会报错。我暂时遇到的两个问题:一个是运行的时候发现JDK存在默认路径,解决方法就是把环境变量配置中的PATH路径下的默认路径删除即可;另一个是JDK版本不匹配,下载的MAT是64位的就需要64位的JDK才可以,解决方法重新下载一个新版本JDK重新配置一下即可。
好的,下面介绍一下使用方法:
1、生成 .hprof文件
选择AndroidStudio中的Monitors中Memory栏上的“小车”按钮,点击,然后设备执行你想要检测的页面,进入后退出,再次点击该按钮。其实这个按钮是执行了gc回收。然后点击右边像文件似的按钮,稍微等待一会就会生成.hprof文件。
使用Eclipse MemoryAnalyzer tools 分析内存溢出问题
最新推荐文章于 2024-07-25 10:42:29 发布
本文介绍了如何使用Eclipse MemoryAnalyzer (MAT)工具来分析和诊断Java内存溢出问题。在公司项目中遇到卡顿问题,怀疑是由于OOM导致。MAT作为一个开源工具,能够帮助分析内存快照,定位复杂问题。文章详细讲述了生成.hprof文件、使用MAT进行分析的步骤,并提到了在使用过程中可能遇到的JDK路径和版本问题及其解决方案。
摘要由CSDN通过智能技术生成