码迷,mamicode.com
首页 > 其他好文 > 详细

JVM基础和调优(三)

时间:2014-11-06 21:27:10      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   ar   使用   sp   on   2014   问题   

主要讲解垃圾回收的算法

上面我们已经了解到了,JVM的体系的结构,这次我们来说一下垃圾回收的算法。

1. 最开始的想法,或者说垃圾回收的最容易想到的就是:引用计数(reference count)

我们记录每一个对象受到引用的次数,每增加一个引用就在这个对象对应的引用次数加一,每减少一次对对象的印象对应的引用次数就减一,回收的时候直接检查引用的次数,次数为零的时候直接的回收。这个有一个缺点就是循环引用的问题。但是还有程序在使用这种算法,

2. 针对每一个对象,使用引用计数不行,我们可以使用标记,这个就是标记-清楚(mark - sweep)算法。

bubuko.com,布布扣

此算法执行分两阶段。第一阶段从引用根节点开始标记所有被引用的对象,第二阶段遍历整个堆,把未标记的对象清除。此算法需要暂停整个应用,同时,会产生内存碎片。

这里需要说一下,引用的根节点是什么,为什么所有的,包括循环引用都能标记到?

JVM基础和调优(三)

标签:style   blog   http   ar   使用   sp   on   2014   问题   

原文地址:http://www.cnblogs.com/zhailzh/p/4079771.html

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