新生区、老年区、永久区

suaxi
2020-11-30 / 0 评论 / 118 阅读 / 正在检测是否收录...

1、新生区

  • 类:诞生和成长的地方,甚至死亡
  • 伊甸园区:所有的对象都是在伊甸园区new出来的
  • 幸存者区

2、老年区
重GC之后活下来的进入老年区.png
注:经验证,99%的对象都是临时对象

3、永久区
这个区域常驻内存,用来携带JDK自身携带的Class对象。Interface元数据,存储Java运行时的一些环境或类信息(这个区域不存在垃圾回收),关闭虚拟机就会释放这个区域的内存。

  • Jdk 1.6之前:永久代,常量值在方法区中
  • Jdk 1.7:永久代慢慢退化,去永久代,常量池在堆中
  • Jdk 1.8之后:无永久代,常量池在元空间

会出现OOM的情况:启动类加载了大量的第三方jar包;Tomcat部署的应用过多;大量动态生成的反射类不断被加载等
元空间.png

0

评论 (0)

取消