垃圾回收的几种方式

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/26 19:18:35
垃圾回收的几种方式垃圾回收的几种方式垃圾回收的几种方式此外,一些算法可以以增量方式完成它们的工作(不需要一次收集整个堆,使得收集暂停时间更短),一些算法可以在用户程序运行时运行(并发收集).其他算法则

垃圾回收的几种方式
垃圾回收的几种方式

垃圾回收的几种方式
此外,一些算法可以以 增量方式完成它们的工作(不需要一次收集整个堆,使得收集暂停时间更短),一些算法可以在用户程序运行时运行(并发收集).
其他算法则必须在用户程序暂停时一次进行整个收集(即所谓的 stop-the-world收集器).最后,还有混合型的收集器,如1.2 和以后版本的 JDK 使用的分代收集器,它对堆的不同区域使用不同的收集算法.
不同的垃圾收集实现使用不同的策略来识别和收回不可到达的对象,它们与用户程序和调度器以不同的方式互动.不同类型的应用程序对于垃圾收集有不同的要求 ―― 实时应用程序会将要求收集暂停的持续时间短并且有限制,而企业应用程序可能允许更长时间和可预测性更低的暂停以获得更高的吞吐能力.
有几种垃圾收集的基本策略:引用计数、标记-清除、标记-整理 (mark-compact) 和复制.此外,一些算法可以以 增量 方式完成它们的工作(不需要一次收集整个堆,使得收集暂停时间更短),一些算法可以在用户程序运行时运行( 并发收集).
其他算法则必须在用户程序暂停时一次进行整个收集(即所谓的 stop-the-world收集器).最后,还有混合型的收集器,如1.2 和以后版本的 JDK 使用的分代收集器,它对堆的不同区域使用不同的收集算法.
在对垃圾收集算法进行评价时,我们可能要考虑以下所有标准:*暂停时间
.收集器是否停止所有工作来进行垃圾收集?要停止多长时间?暂停是否有时间限制?*暂停的可预测性

垃圾分类分装可以回收可以回收的部分。