JVM堆(虚拟机堆)的分区

JVM堆分为:新生代(young)和老年代(old)

新生代分为:伊甸园(eden)和幸存区(survivor)

幸存区分为:from区和to区 from和to通常大小相等

  • 伊甸园 eden,最初对象都分配到这里,与幸存区合称新生代
  • 幸存区survivor,当eden内存不足,回收后的幸存对象到这里,分成from和to,采用标记复制算法
  • 老年代old,当幸存区对象熬过几次回收(最多15次) ,晋升到老年代(幸存区内存不足或大对象会导致提前晋升)
相关推荐
请你打开电视看看1 小时前
Jvm知识点
jvm
程序猿进阶2 小时前
堆外内存泄露排查经历
java·jvm·后端·面试·性能优化·oom·内存泄露
阿龟在奔跑13 小时前
引用类型的局部变量线程安全问题分析——以多线程对方法局部变量List类型对象实例的add、remove操作为例
java·jvm·安全·list
王佑辉14 小时前
【jvm】方法区常用参数有哪些
jvm
王佑辉14 小时前
【jvm】HotSpot中方法区的演进
jvm
Domain-zhuo14 小时前
什么是JavaScript原型链?
开发语言·前端·javascript·jvm·ecmascript·原型模式
Theodore_10222 天前
7 设计模式原则之合成复用原则
java·开发语言·jvm·设计模式·java-ee·合成复用原则
我是苏苏2 天前
Web开发:ORM框架之使用Freesql的DbFrist封装常见功能
java·前端·jvm
天草二十六_简村人2 天前
Java语言编程,通过阿里云mongo数据库监控实现数据库的连接池优化
java·jvm·数据库·mongodb·阿里云·微服务·云计算
老码沉思录2 天前
Android开发实战班 - 数据持久化 - Room 数据库应用
android·jvm·数据库