logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

关于垃圾收集器G1与ZGC

G1(Garbage-First)是一款面向服务器的垃圾收集器,主要针对配备多个处理器及大容量内存的机器,以极高概率满足GC停顿时间要求的同时,还具备高吞吐量性能的特征。G1将Java堆划分为多个大小相等的独立区域(Region),JVM最多可有2048个Region。一般Region大小等于堆大小除以2048,如对大小为4096M,则Region大小为2M。-XX:G1HeapRegionSiz

文章图片
#jvm#java
关于JVM对象创建与内存分配机制

1. 类加载检查:当虚拟机接收到一条new指令时,会先检查这个指令的参数是否能在常量池中定位出一个类的符号引用,并且检查此符号引用指代的类是否已被加载、解析和初始化,若没有,则执行类加载过程。2. 分配内存:类加载检查通过后,虚拟机将为新生对象分配内存。对象所需内存大小在类加载完成后便以确定,为对象分配空间的任务相当于将一块同等大小的内存从Java堆中划分出来。3. 初始化:虚拟机将分配到的内存空

文章图片
#jvm#java#开发语言
关于垃圾收集算法与垃圾收集器ParNew与CMS

当前虚拟机的垃圾收集均采分代收集算法,根据对象存活周期的不同将内存分为几块。Java堆分为老年代和年轻代,可根据各自特点选择合适的垃圾收集算法。例如年轻代中,每次收集都会有大量对象被回收,所以可选择复制算法,只需付出少量对象的复制成本便可完成每次的垃圾收集。老年代中,对象存活几率比较高,且没有额外空间对其进行分配担保,因此必须选择标记-清除算法或标记-整理算法进行垃圾收集。标记-清除 或 标记-整

文章图片
#jvm#java
到底了