java垃圾回收机制--CMS

来源:互联网 发布:淘宝well运动正吗 编辑:程序博客网 时间:2024/06/10 06:02

CMS --- Concurrent Mark Sweep(并发标记清除)

分四步:

1.初始标记:找到GC Root能(直接)关联到的对象

可以作为GC Root的有:

1)栈中引用的对象

2)方法区中静态引用指向的对象

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

4)Native方法中JNI(Java Native Interface:java可以调用native语言写的函数,native语言课以调用java写的函数引用的对象

2.并发标记:以上一阶段标记标记的对象作为根,标记所有能关联到的对象(并发指用户线程和标记线程的并发)

3.重新标记:因为上一阶段,是两个线程同时进行的,所以标记可能发生变化,所以要重新进行标记

4.并发清除:对未进行标记对象进行清除


原创粉丝点击