Rob*_*t H 17 java profiling garbage-collection netbeans
我是第一次在NetBeans中查看分析器,今天早上我注意到我通过Monitor分析器显示了超过1700个幸存的代,但是堆大小不变.在做一些阅读时,我发现这篇文章讨论了如何使用NetBeans探查器来发现泄漏.
因此,在关注文章建议后,我开始了一个内存分析器.在查看结果时,我发现char []占了大多数幸存的世代.目前,在这篇文章中,char []已经22代了.
现在一些帖子(OldCurmudgeon在底部附近评论)表明,如果我的堆稳定,没有泄漏,而其他人说,如果世代继续增长,那么.所以我有点困惑,哪个是对的.
所以,我的问题是:
根据以下屏幕截图,我应该进一步研究潜在的内存泄漏吗?
内存(堆)
存储器(GC)
实时分配的对象
在char[]大概会举行String的对象.它们可以出于任何目的在任何地方创建,例如探查器和JMX使用它们,因此一个什么都不做的过程将显示这些(以及不断增长的堆)
注意:所有字符串文字和类等的名称将一直存在,直到卸载ClassLoader(这可以是程序的生命周期)
要确定您的堆使用量是否在增长,您应该查看完整GC后保留的数量.看看每次下降的底部,它对我来说都是一样的.其他信息对性能调优很有用,但本身并不是问题.