JVM 什么样的对象会直接进入老年代?
2023-02-18 16:38:04 时间
B站搜索“乐哥聊编程“有本篇文章配套视频 https://www.bilibili.com/video/BV1aY411o7in/
面试题
为什么设置这些机制,让对象提前进入老年代呢?
大对象直接进入老年代
什么是大对象呢,这个是由jvm定义的参数值决定的,但是这个参数只在Serial和ParNew垃圾收集器中生效 :-XX:PretenureSizeThreshold
当我们新分配的对象大小大于等于这个值,就会直接在老年代中分配
长期存活的对象将进入老年代
在每个对象的头信息中,都包括一个年龄计数器
对象在经过一次minor gc之后,如果仍然存活,并且能够被 survior所容纳 ,那么这个年龄计数器就会加一,当计数器的值达到了默认值大小(一般默认值为15),就会进入到老年代。
对象动态年龄判断后决定是否进入老年代
当survior区域的存活对象的总大小占用了survior区域大小的50%(可以通过参数指定),那么此时将按照这些对象的存活年龄从从到大排序,然后依次累加,当累加到对象大小超过50%,则将大于等于当前对象年龄的存活对象全部挪到老年代。
相关文章
- java中延时队列的使用
- 2022DataGrip激活码(2022DataGrip最新激活码)2022DataGrip激活码
- 网络设备的运行隐患怎么排除?日常的例行维护绝对不能少,收藏本文,轻松拿捏各种场景
- 2022dotMemory激活码(2022dotMemory最新激活码)2022dotMemory激活码
- java服装经销系统服装进销系统
- java和vue车辆管理系统车管所系统
- 前端入门教程:CSS标准盒模型和怪异盒模型区别
- 腾讯开源的 hel 提供了加载远程模块的能力,谈谈它的实现原理
- 错误代码0x800b010a
- 领取10个JetBrains IDE激活许可证,全家桶通用支持所有版本,随时更新随时换!
- JetBrains 正式版激活码,有效期至2023-07-26,配合插件可破解2018-2021版本的IDE
- 2022 年最适合编程的 6 种字体
- 2021 年最适合编程的 6 种字体
- 推荐一个更好的nvidia-smi,用于多人集群按照用户名查看GPU使用情况
- 第116期:高德地图绘制热力图遇到的一个问题
- 第117期:Dart的基本知识(变量的声明)
- 第119期:程序员、建造师和剪辑师的异同
- 第121期:第二次CodeReview梳理的几个问题
- 第122期:一个人同时开发多个业务线容易出现的流程上的问题
- 第123期:用vue3结合hooks开发一个可以注册的二次确认弹框