首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用visualvm查找内存泄漏

如何使用visualvm查找内存泄漏
EN

Stack Overflow用户
提问于 2012-02-06 09:45:31
回答 1查看 52.5K关注 0票数 29

我怀疑我们的ActiveMQ连接桥有一个主要的内存泄漏--我们看到了典型的内存泄漏模式(应用程序加载正常,如果长时间运行就会变慢,或者在短时间内一次又一次地重启)。我查找了用于查找Java内存泄漏的现代最佳实践,许多开发人员似乎正在放弃传统的工具,如jhat/jmap,而不是新的(Er) jvisualvm

在启动这个工具(并花了几个小时阅读它的教程)后,我能够为CPU和内存拍摄profiler快照。

我只是有点卡在这一点上-我如何分析这些快照来识别泄漏?关于如何使用jvisualvm生成快照的文档有很多,但关于如何真正理解它们的文档却很少。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-06 14:05:07

使用visualvm分析内存泄漏并非易事。它有一个叫做“采样器”的工具/插件。这可用于对内存或cpu进行采样。您可以定期拍摄快照,并查找可能的泄漏。以下是有关如何使用它的一些细节-可从quick search获得

更有效的方法是获取堆转储(例如,当应用程序速度变慢或OOM happens时)。VisualVM帮助您获取堆转储(使用监视器选项卡上的Heap Dump )

这个文件可以通过MAT进行分析-一些细节可以在How do I analyze a .hprof file?上找到

票数 28
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9154785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档