JVM源码分析之堆内存的初始化

本文详细探讨了JVM堆内存的初始化过程,从GC策略的设定到分代生成器的初始化,再到Java堆管理器的配置。讲解了不同GC算法如ParallelGC、G1GC、CMS的初始化,并分析了堆容量、新生代、老年代和永久代的大小调整策略,以及如何通过参数进行配置。
摘要由CSDN通过智能技术生成

 

原创申明:本文由公众号【猿灯塔】原创,转载请说明出处标注

365篇原创计划”第十五篇。

今天呢!灯塔君跟大家讲:

JVM源码分析之堆内存的初始化

 

堆初始化

Java堆的初始化入口位于Universe::initialize_heap方法中,实现如下:

其中UseParallelGC、UseG1GC、UseConcMarkSweepGC都可以通过启动参数进行设置,整个初始化过程分成三步:
1、初始化GC策略;
2、初始化分代生成器;
3、初始化Java堆管理器;

 

GC策略初始化

HotSpot的GC策略实现如下:

其中MarkSweepPolicy是基于标记-清除思想的GC策略,如果虚拟机启动参数没有指定GC算法,则使用默认使用UseSerialGC</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值