【发布时间】:2011-06-20 17:00:03
【问题描述】:
从内存监视器图 (http://i.stack.imgur.com/sBKzO.png) 中可以看出,下午 4:35 左右是我启动 VisualVM Profiler 的时间,它导致内存使用量下降了约 7G,这意义重大。为什么会这样?就好像启动分析器允许回收更多内存对象——但为什么在此之前的许多 GC 轮次中没有对它们进行垃圾收集?
(大约 4:49 是我在 Profiler 中单击“快照”时,出现了类似的下降,但程度较轻。)
我很困惑,如果有人能对这种行为有所了解,我将不胜感激。谢谢!
【问题讨论】:
-
附加分析器可能会导致触发更多的完整 GC,这会减少短暂使用的内存。
-
啊,有道理,我认为这确实是这里发生的事情,非常感谢彼得!