JVM垃圾收集算法

标记清除算法

1先把垃圾 对象标记出来

2然后再进行挨个清除

缺点:

1.清除后的内存空间是不连续的碎片,

2.效率也不高(相对于复制算法,复制算法是一次性清除,标记清除是挨个清除)

复制算法(适合年轻代)

1.内存会分为两半

2.将存活 对象标记

3.将存活对象挨个放到另一半区域

4.将原区域一次性清除掉

缺点:

1.内存使用一半,对内存的使用率不高

适合年轻代原因:

年轻代的对象存活率不高,可复制的存活对象较少,复制算法的效率就会高

标记整理算法

1.将垃圾 对象进行标记

2.清理时,边清理边把存活对象挪到一起

分代收集算法

对于不同区的对象进行不同处理

1.年轻代:复制算法(对象存活率不高,复制算法的效率块)

2.老年代:标记整理算法(对象存活率高,没有额外空间来分配)

相关推荐
沐浴露z1 分钟前
详解Java ArrayList
java·开发语言·哈希算法
第二只羽毛3 分钟前
单例模式的初识
java·大数据·数据仓库·单例模式
4***g8944 分钟前
Java进阶-SpringCloud设计模式-工厂模式的设计与详解
java·spring cloud·设计模式
__万波__4 分钟前
二十三种设计模式(五)--建造者模式
java·设计模式·建造者模式
北郭guo5 分钟前
Java设计模式 【理论+代码实现】 让你从小白到大佬的蜕变
java·开发语言·设计模式
计算机徐师兄5 分钟前
Java基于微信小程序的贝壳活动助手【附源码、文档说明】
java·微信小程序·贝壳活动助手·贝壳活动助手小程序·贝壳活动助手微信小程序·java贝壳活动助手小程序·java贝壳活动助手微信小程序
Gavin在路上7 分钟前
架构设计之COLA架构
java·数据库·架构
他们都不看好你,偏偏你最不争气8 分钟前
【iOS】数据持久化
jvm·数据库·macos·ios·oracle·objective-c·cocoa
MediaTea9 分钟前
Python 库手册:gc 垃圾回收
java·开发语言·jvm·python·算法
碎像9 分钟前
阿里云 ARMS 应用实时监控服务
java·阿里云·云计算