Java--JVM--GC四大算法

  1. JVM复习
  2.  GC是什么(分代收集算法)
    1. 次数上频繁收集Young区
    2. 次数上较少收集old区
    3. 基本不动元空间  
  3. GC4大算法
    1. GC算法总体概述
      1.  
      2.   

          
    2. 4算法
      1. 引用计数法
        • 使用计数器对每个对象被引用次数进行计数,当计数为0是就可以回收了
        •  System.gc():手动开启垃圾回收,但是不是立即执行(与Threa.start()相似) ,不建议使用

      2. 复制算法(Copying)
        1. 将伊甸园区和from区中的对象复制到to区的算法叫做复制算法
        2. 年轻代中使用的是Minor GC,这种GC算法采用的是复制算法(Copying)
        3. what
          • 原理
          • 解释
        4. 劣势

          •        

      3. 标记清除(Mark-Sweep)
        1. 老年代一般是由标记清除或者是标记清除与标记整理的混合实现 

        2. what
          • 原理
            •  
            •     
          • 动态演示  
        3. 劣势
          •  
                    
      4. 标记压缩(Mark-Compact)(标记清除压缩)(标记整理算法)
        1. 老年代一般是由标记清除或者是标记整理的混合实现
        2. what
          • 原理
            •  

               

                  
        3. 劣势

          1.   
        4. 标记清除压缩(Mark-Sweep-Compact)(工作中的算法,不在四大算法中)
          1.  

             

              
    3. 小总结
      1.     

          
    4. 面试题
      1. JVM内存模型,以及分区,需要详细到每个区放什么
      2. 堆里面的分区:Eden,survival from to,老年代,各自的特点
      3. Gc是三种收集算法:标记清除,标记整理,复制算法的原理与特点,分别用在什么地方
      4. Minor GC 和 Full GC分别在什么时候发生    
posted @ 2021-06-05 22:07  张紫韩  阅读(109)  评论(0编辑  收藏  举报