通过jmap强制Full GC,Old gen确实减少了,但是RES一直在增长...
pmap结果:
anon是什么意思,非堆内存?
编辑:
堆使用了大约500MB,但是RSS超过15GB,pmap显示许多匿名大约65MB。
我的问题是什么可能消耗堆外的内存?谢谢!
最佳答案
Oracle的JVM有多种管理内存的算法。 其中一些可以将未使用的内存页返回给操作系统,其他则不能。
默认算法(并行收集器)永远不会将内存返回给操作系统。
以下两种算法可以将内存归还给操作系统
- 串行 GC(单线程标记清除紧凑型)
- G1
您已找到可用算法和相关 JVM 选项的摘要 here .
关于java - 为什么FullGC无法释放物理内存(RES)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31962755/