找回密码
 立即注册
首页 编程领域 编程板块 老年代与标记复制算法

Java 老年代与标记复制算法

2023-2-24 15:26:35 评论(0)
本帖最后由 涛哥说设计 于 2023-2-24 15:28 编辑

老年代因为每次只会说少量对象,因此采用Mark-Compact算法
1、Java虚拟机提到过的处于方法区的永生代(Permanent Generation),它用来存储class类,常量,方法描述等。对永生代的回收主要包括废弃常量和无用的类。
2、对象的内存分配主要在新生代的Eden Space和Survivor Space的From Space(Survivor目前存放对象的那一块),少数情况会直接分配到老年代。
3、当新生的Eden Space和From Space空间不足时就会发生一次GC,进行GC后,Eden Space和From Space区的存活对象会被挪到To Space,然后将Eden Space和From Space进行清理。
4、如果To Space无法足够存储某个对象,则将这个对象存储到老年代。
5、在进行GC后,使用的便是Eden Space和To Space了,如此反复循环。
6、当对象在Survivor区躲过一次GC后,其年龄就会+1,默认情况下年龄达到15的对象会被移到老年代中。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

使用道具 举报

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们(3513994353@qq.com)。
您需要登录后才可以回帖 登录 | 立即注册
楼主
涛哥说设计

关注0

粉丝0

帖子25

最新动态