完全GC后java OldGen的使用率上升
尝试使用VisualVM 1.3调试java程序(在64位linux上运行)中的内存泄漏
我注意到,每次单击VisualVM监视器选项卡中的“执行GC”按钮后,旧Gen内存池的“已使用”值都会上升。。。这似乎有点违反直觉
如果“performgc”只触发年轻一代的GC(因为一些对象可以从年轻一代迁移到老一代),那么这是有意义的。。。但在完全GC的情况下不是这样
以前有人遇到过这种情况吗?谢谢
例如。 1) OldGen初始状态:
高峰时期 承诺:1431 Mb 初始化:1431MB 最大:1431MB 使用:98Mb
用法 承诺:1431 Mb 初始化:1431MB 最大:1431MB 使用:98Mb
2)执行GC
3)新国家:
高峰时期 承诺:1431 Mb 初始化:1431MB 最大:1431MB 使用:105Mb
用法 承诺:1431 Mb 初始化:1431MB 最大:1431MB 使用:105Mb
# 1 楼答案
完全GC也可能导致年轻一代对象迁移到老一代。你有什么具体的理由不这么认为吗