如何查找java的内存泄露
1.去IBM网站下载一个工具:ibm support assistant.
2.下载相关插件。
3.打开个Memory Analyzer ,输入heapdump.20130719.003613.3888.0004.phd 文件的路径。
分析可以得到:
根据图形可以判断出hashmap占用内存比较多,然后hashmap中存储的都是RafResult的对象。
如果对代码比较熟悉的话,很容易找到是哪部分代码:
这样就算是定位了代码了,下面修改就ok了。
4.还有一个插件叫: Garbage collection and Memory Visualizer for ISAv4,可以分析was下面的native_stderr.log文件。
分析结果如下: