zoukankan      html  css  js  c++  java
  • 深入理解Java虚拟机 读书笔记(4):内存分配策略

    本系列为《深入理解Java虚拟机 》(周志明著)读书笔记

    VM的内存分配机制大致遵循这几个原则:

    • 对象优先在Eden分配
    大多数情况下,对象中新生代的Eden区分配。当Eden区没有足够的内存时,JVM将发起一次Minor GC。
    • 大对象直接进入老年代
    这里的大对象指需要大量连续内存空间的对象,最典型的就是很长的字符串和各种数组。虚拟机提供了一个-XX:PretenureSizeThreshhold参数,令大于这个值的对象直接进入老年代。
    • 长期存活的对象进入老年代
    JVM给每个对象定义了一个年龄(Age)计数器。如果对象中Eden出生并且经历一次Minor GC后仍然存活,并能被Survivor接纳的话,此对象将被移动到Survivor空间中,并将年龄设为1。对象在Survivor中每经历一次Minor GC,其年龄将增加1。当对象到达一定年龄时(默认为15),就会被晋升到老年代中。这个界限可以通过-XX:MaxTenuringThreshold来设置。

  • 相关阅读:
    0509操作系统
    0508数据结构
    计算机组成原理
    0510数据库--基础知识
    0508操作系统
    0507数据结构
    0506操作系统和数据结构
    机试题201702x--不定长数组的输入
    机试题201805--输入n个字符串,将其反转输出
    SSH框架--Hibernate配置
  • 原文地址:https://www.cnblogs.com/jubincn/p/3381117.html
Copyright © 2011-2022 走看看