垃圾回收机制

来源:互联网 发布:wifi监控器软件下载 编辑:程序博客网 时间:2024/05/30 02:51

1) 概念

用于释放不再使用的对象占用的内存

目的是清除不再使用的对象,通过确定对象是否被活动对象引用来确定是否该收集该对象

2) 常用方法

引用计数和对象引用遍历

3) 引用计数

对特定对象,通过引用计数来表示对象的引用数,当对象的引用数为0时,便可以进行垃圾回收

4) 对象引用遍历

从一组对象开始,沿着整个对象图的每条链接,递归确定可到达的对象,如果某对象不能从这些根对象的一个到达,则它作为垃圾回收

5) 分代

JVM创建的对象会放在堆中,而堆中对象会分为三个代:年轻代,老年代,持久代

年轻代:所有新创建的的新对象都是在年轻代分配堆空间,当年轻代的空间被填满以后,会导致一个收集,当年轻代存活时间变久,会移动代老年代

老年代:用来存储较长生命周期的对象,当老年代空间被填满以后,也会进行收集

持久代:描述应用程序类和元数据

6) 垃圾收集器的种类

串行收集器,并行收集器,并发标记清理收集器,G1收集器

7) 使用的算法

年轻代: 拷贝算法

年老代和持久代: 标记-清扫-压缩算法(mark-sweep-compact)


0 0
原创粉丝点击