前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM性能调优-探索堆内存到底是怎么分配

JVM性能调优-探索堆内存到底是怎么分配

作者头像
cwl_java
发布2019-12-20 13:24:51
5040
发布2019-12-20 13:24:51
举报
文章被收录于专栏:cwl_Javacwl_Java
简介:堆内存分配⽅式,分配规则讲解
对象分配的规则有哪些
  • 对象主要分配在新⽣代的 Eden 区上
  • 如果启动了本地线程分配缓冲,将按线程优先在 TLAB 上分配
  • 少数情况下也可能会直接分配在⽼年代中
GC参数指定垃圾回收
  • -Xms20 M、-Xmx20 M、-Xmn1 0 M 这 3 个参数限制了 Java 堆⼤⼩为 20 MB,不可扩展,其中 10 MB 分配给新⽣代,剩下的 10 MB 分配给⽼年代。-Xx: SurvivorRatio= 8 决定了新⽣代中 Eden 区与两个 Survivor 区的空间⽐例是 8:1
新⽣代与⽼年代

新⽣代 GC (Minor GC):指发⽣在新⽣代的垃圾收集动作,因为 Java 对象⼤多都具备朝⽣夕灭的特性,所以 Minor GC ⾮常频繁,⼀般回收速度⽼年代 GC (Major GC/ Full GC):指发⽣在⽼年代的 GC,出现了 Major GC,经常会伴随⾄少⼀次的 Minor GC(但⾮绝对的,在 Parallel Scavenge 收集器的收集策略⾥就有直接进⾏ Major GC 的策略选择过程)。Major GC 的速度⼀般会⽐ Minor GC 慢 10 倍以上。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 对象分配的规则有哪些
  • GC参数指定垃圾回收
  • 新⽣代与⽼年代
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档