请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

标记清除算法疑问

视频里说标记清除算法会回收标记了没被标记为存活的对象,把标记为可达对象的标记给清除掉,清除掉标记这个行为为什么不直接把要清除掉标记的可达对象直接给回收了呢,清除掉标记不也说明了 该对象为不可达对象了吗

正在回答 回答被采纳积分+3

1回答

翔仔 2019-02-22 00:20:39

。。同学你的这个表达比较乱,我直接说说我视频里面怎么讲的

"      顾名思义,就是将回收分为两个阶段,标记和清除。该算法首先从根集合进行扫描,对存活的对象进行标记,所以首先用的是咱们之前说的可达性算法来找到垃圾对象,标记完毕后,会对堆内存从头到尾进行线性遍历,如果发现有对象没有被标识为可到达对象,那么就将此对象占用的内存回收,并且将原来标记为可到达对象的标识清除,以便进行下一次垃圾回收"

所以并不是清除标记,而是直接清除没有被标识为可达的对象。。。

2 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信