微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JVM——分代收集算法与分区收集算法

JVM——分代收集算法与分区收集算法
  1. 分代收集算法

    概念:根据对象的不同类型将内存划分为不同的区域,JVM将堆划分为新生代、老年代和永久代,并根据各个年代的特点分别采用不同的GC算法

    • 新生代——负责算法

    • 老年代——标记整理算法

    特点 适用算法
    新生代 对象生命周期短,标记阶段会标记大量已死亡对象 复制算法
    老年代 生命周期长的对象、大对象,可回收数量 标记整理算法
    永久代 存储Class类、常量、方法描述等 回收废弃的常量无用的类
  2. 分区收集算法

    概念:将整个堆空间划分为连续的大小不同的小区域,每个小区域单独进行内存使用和垃圾回收,这样做的好处是可以根据每个小区域内存的大小灵活使用和释放内存。

    根据系统可接受的停顿时间,每次都快速回收若干个小区域,从而减少一次GC所产生的的停顿时间,最后以多次并行累加的方式逐步完成整个内存区域的垃圾回收。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐