zoukankan      html  css  js  c++  java
  • Java垃圾收集算法

    1、标记-清除算法

    最基础的收集算法、主要对内存中的不使用的内存标记为可回收状态,进行回收

    缺点: 标记、回收效率不高还会导致内存分配不够连续,容易触发新生代垃圾回收

    2、复制算法

    将可用内存分为两部分,每次只是用一部分,当其中一部分内存使用完之后,就将存活的对象复制到另外一块,然后对已使用的进行清理。

    缺点:使用率降低、特别是对象存活率较高时需要频繁的复制操作,如果使用的一块对象都存活着会怎么样?

    结论: 适用于新生代,少量内存

    3、标记-整理算法

    标记-清除算法的升级,让所有存活的对象向内存一端移动,然后清理掉边界以外的内存

    结论: 适用于老年代,回收次数较少的场景

    4、分代收集

    根据对象存活周期将内存划分为几块,新生代划分为两块负责清理大量死去的对象和复制少量存活的对象,老年代对象存活率高,使用标记清理

    新生代使用复制算法、老年代使用标记整理算法

  • 相关阅读:
    The Game
    棋盘问题(dfs)(类似8皇后)
    dfs---之全排列
    Dijkstra算法(求单源最短路径)
    四点共面 (简单题)
    最长递增子序列
    线段的重叠
    kruskal
    hdu 1232 畅通工程
    无限对拍程序
  • 原文地址:https://www.cnblogs.com/masterZ/p/11419313.html
Copyright © 2011-2022 走看看