码迷,mamicode.com
首页 > 编程语言 > 详细

JVM垃圾回收算法

时间:2017-12-26 22:44:18      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:bsp   java   roots   判断   nbsp   失效   两种方法   ati   两种   

1.判断对象是否已死的两种方法

1.1  引用计数法

  给对象添加一个引用计数器,如果其他对象引用计数器加一,引用失效计数器减一,当计数器为0的时候,则对象就认为是死亡的状态

  优点:实现简单,效率高

  缺点:无法解决循环引用的问题,

1.2  可达性算法(目前jvm用的gc方法)

  通过GC roots 对象作为起始点,从节点向下搜索,当一个对象到GC roots没有引用链相连,则判断对象已死.

  在Java中,可作为GC roots 的对象包括下面几种

  (1)  栈中直接引用的对象

  (2)  方法区中类静态属性引用的对象.

  (3)  方法区中常量引用的对象

  (4)  本地方法栈中JNI(Native方法)引用的对象

JVM垃圾回收算法

标签:bsp   java   roots   判断   nbsp   失效   两种方法   ati   两种   

原文地址:https://www.cnblogs.com/stevehu1231/p/8120231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!