我知道,我有一个 perm gen 内存泄漏。使用 jvisualvm 进行分析表明,在进行热部署时(例如,在 tomcat、WebSphere、WebLogic 等中停止和启动应用程序而不杀死 JVM) - PermGen 空间不断增加。
在阅读、使用 jhat 和其他高级工具后,我意识到我可能WebAppClassLoader
在其父类加载器的某个地方引用了来自类的引用。
即使我在 jhat 上做了一些基于 JavaScript 的大量查询,我也无法确定它
是否有一个简单的实用程序可以找出谁负责您的类加载器不被垃圾收集(从而允许对其加载的类进行垃圾收集)?
我尝试了 JProfiler、jvisualvm、jhat 和很多 Google
致所有 LMGTFY 的朋友——我已经花了大约一天半的时间阅读论坛的分步说明,但运气不佳。我正在寻找输出的实用程序或代码:
类 Y 的对象 X 是唯一的 GC 根,它可以防止您的类被删除。