VisualVM包含在Java的最新版本中。您可以使用它来创建堆转储,并查看其中的对象。
另外,您还可以使用jmap(在jdk / bin目录中)创建一个heapdump命令:
jmap -dump:format=b,file=heap.bin <pid>
您甚至可以使用它来快速获取所有对象的直方图
jmap -histo <pid>
我可以推荐使用Eclipse Memory
Analyzer(http://eclipse.org/mat)对堆转储进行高级分析。它使您可以精确地找出为什么某个对象或一组对象仍然存在。这是一个博客条目,向您显示Memory
Analyzer可以做什么:http :
//dev.eclipse.org/blogs/memoryanalyzer/2008/05/27/automated-heap-dump-
analysis-finding-memory-leaks-with-one-
点击/
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)