JVM配置参数演示
-Xms10m -Xmx10m -XX:MaxDirectMemorySize=5m
GC 回收过长时,会抛出OutOfMemoryError.过长的定义是,超过98%的时间用来做GC并且回收了不到2%的堆内存
连续多次GC,都回收了不到2%的堆内存的极端情况下才会抛出。假如不抛出GC overhead limit错误会发生什么情况呢?
那就是GC清理的这么点内存很快就会再次被填满,迫使GC再次执行,这样就形成恶性循环,PCU使用率一直是100%而GC回收却没有任何成果。