垃圾回收的基本工作流程

标记阶段(Marking Phase):垃圾回收器会从一个或多个根对象(如全局对象、执行栈中的变量等)开始,递归地遍历堆中的对象,并对可达的对象进行标记。可达对象是指可以通过根对象直接或间接访问到的对象。

清除阶段(Sweeping Phase):在标记阶段完成后,垃圾回收器会遍历整个堆,找到未被标记的对象,这些对象被认为是不再使用的。垃圾回收器会将这些未标记的对象所占用的内存空间释放回给操作系统或内存池,使其可以被再次使用。

压缩阶段(Compacting Phase)(可选):某些垃圾回收器还可能包含一个压缩阶段,用于进一步优化内存空间的利用。在此阶段,垃圾回收器会将存活的对象向堆的一端移动,以便在堆的另一端形成一块连续的可用内存空间。

https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=d59bf6cbe74a47848bb179590bdf5f59
全部评论

相关推荐

Twilight_mu:经典我朋友XXXX起手,这是那种经典的不知道目前行情搁那儿胡编乱造瞎指导的中年人,不用理这种**
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 18:30
点赞 评论 收藏
分享
评论
2
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务