zoukankan      html  css  js  c++  java
  • GC垃圾回收机制及算法

    垃圾回收机制简介

       垃圾回收的全称是 Garbage Collection 通常被简称为GC。是对内存中堆区域进行清理的一种技术。

    为什么需要垃圾回收机制

      1、内存溢出。

         2、程序效率降低。

    如何知道一个对象是否可以被回收

      1、 引用计数算法:判断对象的引用数量。

        原理就是为每个对象创建一个引用计数,当有对象引用时,计数器加1,当引用释放时,计数器减1,所以,当计数器为0时,就认为可以被回收。

        

         缺点:很难解决对象之间互相循环引用的问题。

      2、 可达性分析算法:判断对象的引用链是否可达。  

        可达性分析从GC Roots(根)开始向下搜索,搜索所走过的路径称为引用链。当一个对象到GC Roots没有任何引用链时,则认为此对象可以被回收。大家可以认为就是一个树的根节点开始计算引用情况。 

    垃圾收集算法

       1、 标记-清除算法

       2、 复制算法

       3、 标记-整理算法

       4.、分代收集算法

  • 相关阅读:
    【洛谷P6835】线形生物
    【洛谷P2679】子串
    【洛谷P5072】盼君勿忘
    【洛谷P3312】数表
    【洛谷P1447】能量采集
    【洛谷P2257】YY的GCD
    【洛谷P4318】完全平方数
    【AT2300】Snuke Line
    window.showModalDialog
    js typeof
  • 原文地址:https://www.cnblogs.com/songgj/p/11133445.html
Copyright © 2011-2022 走看看