垃圾收集器
文章平均质量分 79
Ronbay(偶像)
我不喜欢庸俗而又平凡的一生,总想做什么,做点有意义的事情,让更多人知道自己最起码在这个世上来过......
展开
-
垃圾收集器的底层算法实现
三色标记背景:在并发标记过程中,因为并发标记期间应用线程还在继续跑,对相间的引用可能发生变化,多标和漏标的情况就有可能发生。这里我们引入“三色标记”来给大家解释下,把Gcroots可达性分析遍历对象过程中遇到的对象, 按照“是否访问过”这个条件标记成以 下三种颜色:黑色: 表示对象已经被垃圾收集器访问过, 且这个对象的所有引用都已经扫描过。 黑色的对象代表已经扫描过, 它是安全存活的, 如果有其他对象引用指向了黑色对象, 无须重新扫描一遍。 黑色对象不可能直接(不经过 灰色对象) 指向某个白色对象。原创 2022-05-07 17:02:59 · 82 阅读 · 0 评论 -
垃圾收集器回顾
重点看下CMS垃圾收集器CMS(Concurrent Mark Sweep) 是一款以获取最短停顿时间为目标的垃圾收集器。它非常符合在注重用户体验的应用上使用,他是Hotspot虚拟机第一款真正意义上的并发收集器,第一次实现了让垃圾收集线程与用户线程(基本上)同时工作。从名字上看,它是使用的“标记清除”算法,它的运作过程相对其他垃圾收集器复杂一些,整个过程分为四个步骤:初始标记:暂停所有的其他线程(STW),并记录下gc roots直接能引用的对象,速度很快。并发标记:并发标记阶段就是从..原创 2022-05-07 16:19:36 · 269 阅读 · 0 评论