java速学教程(入门到精通)
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
大多数情况下,对象优先在新生代eden区域中分配。当eden内存区域没有足够的空间进行分配时,虚拟机将触发一次 minor gc(新生代gc)。minor gc期间虚拟机将eden区域的对象移动到其中一块survivor区域。
所谓大对象是指需要大量连续空间的对象。虚拟机提供了一个XX:PretenureSizeThreshold参数,令大于这个值的对象直接在老年代中分配。
虚拟机采用分代收集的思想管理内存,那内存回收时就必须能识别那些对象该放到新生代,那些该到老年代中。为了做到这点,虚拟机为每个对象定义了一个对象年龄Age,每经过一次新生代GC后任然存活,将对象的年龄Age增加1岁,当年龄到一定程度(默认为15)时,将会被晋升到老年代中,对象晋升老年代的年龄限定值,可通过-XX:MaxTenuringThreshold来设置。
新生代GC(Minor GC):指发生在新生代的垃圾收集动作,因为对象大多都具备朝生夕灭特性,所以Minor GC非常频繁,回收速度也比较快。
老年代GC(Major GC / Full GC):指发生在老年代中的GC,出现Major GC后,经常会伴随至少一次的 Minor GC。Major GC的速度一般会比Minor GC慢10倍以上。
以上就是Java虚拟机学习 - 对象内存分配与回收的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!
相关文章:
Java免费学习笔记:立即学习
解锁 Java 大师之旅:从入门到精通的终极指南
已抢4962个
抢已抢68048个
抢已抢11910个
抢已抢42303个
抢已抢167258个
抢已抢79333个
抢