目录
深入JVM 原理(一)Java内存模型:https://blog.csdn.net/qq_39827935/article/details/81285009
深入JVM原理(二)Java对象访问模式:https://blog.csdn.net/qq_39827935/article/details/81285038
深入JVM原理(三)JVM 垃圾收集:https://blog.csdn.net/qq_39827935/article/details/81285059
深入JVM原理(四)JVM垃圾回收流程:https://blog.csdn.net/qq_39827935/article/details/81285084
深入JVM原理(五)Java堆内存调整参数(调优关键):https://blog.csdn.net/qq_39827935/article/details/81285099
深入JVM原理(六)年轻代:https://blog.csdn.net/qq_39827935/article/details/81285115
深入JVM原理(七)老年代、永久代和元空间:https://blog.csdn.net/qq_39827935/article/details/81285133
深入JVM原理(八)JVM垃圾回收策略:https://blog.csdn.net/qq_39827935/article/details/81285156
深入JVM原理(九)JVM垃圾回收策略参数配置:https://blog.csdn.net/qq_39827935/article/details/81285175
深入JVM原理(十)G1收集器:https://blog.csdn.net/qq_39827935/article/details/81285207
深入JVM原理(十一)Java引用类型:https://blog.csdn.net/qq_39827935/article/details/81285227
在G1收集器中不再区分所谓的年轻代、老年代内存空间。所有的内存空间就是一块,但是划分为不同的子区域。
所以,相较于其他的策略,更加便利;
虽然G1收集器里面将整个内存区域都混合在了一起,但是其本身也是在小范围内进行年轻代和老年代的区分,就是说依然会采用不同的GC方式来处理不同的子区域。
不用的内存区将释放,有一些数据之间拷贝到老年代;
所有的垃圾内存的保存区域有可能会被清空后重新分配;
老年代的处理流程不一样,因为任何时候如果要想标注老年代的不用内存空间,都需要进行一些暂停,而G1中最大好处是他不用全内存扫描,只是区域性的扫描;
清楚了G1的基本运行原理后,那么下面进行一些G1的配置。
但是,目前可能还不成熟,所以谨慎使用。而最好内存是在80G内存的机器下使用。
范例:使用G1回收器
(java -Xmx10m -Xms10m -XX:+UseG1GC -XX:+PrintGCDetails TestDemo)
G1处理和传统的垃圾收集策略是不同的,关键的因素是它将所有的内存进行了区域性的划分。