问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

12 张图带你彻底理解 ZGC

发布网友 发布时间:2024-10-13 12:50

我来回答

1个回答

热心网友 时间:2024-10-14 06:44

ZGC(Z Garbage Collector)是一款性能优于G1的垃圾收集器。ZGC自JDK 11作为实验特性引入,至JDK 15正式投入使用。启用方式为使用–XX:+UseZGC。ZGC有三大特色:

1. 内存多重映射:ZGC使用mmap技术将不同的虚拟内存地址映射到同一物理内存地址,从而在Marked0、Marked1和Remapped三个虚拟内存中灵活高效地管理内存。应用程序在创建对象时,为对象在上述三个视图空间分别申请一个虚拟地址,这三个虚拟地址映射到同一物理地址。Marked0、Marked1和Remapped作为ZGC的三个视图空间,同一时间点内只能有一个有效,通过切换视图空间完成并发的垃圾回收。

2. 染色指针:ZGC使用染色指针技术将GC信息保存在指针上,提升GC效率。在64位JVM中,对象指针为64位,高16位用于寻址,剩下48位可管理内存达到256TB。ZGC仅用高4位存储4个标志位,最大内存管理可达16TB。通过这4个标志位,JVM可以直接从指针上获取对象的三色标记状态、是否进入重分配集和是否需要通过finalizer访问的信息,无需进行对象访问即可获得GC信息。

3. 内存布局:ZGC基于Region进行内存分布,不区分新生代和老年代,支持动态创建和销毁,包括三种类型的Region。与G1类似,ZGC的内存布局同样基于Region,但其设计更注重并发和效率。

4. 读屏障:读屏障技术是ZGC在解释执行时向应用代码中插入的小段代码,当线程从堆中读取对象引用时执行。它判断对象引用是否满足条件,执行相应动作,以实现高效的并发收集。读屏障会略微影响应用性能,但提高了GC并发能力,降低了停顿时间。

5. GC过程:ZGC的垃圾收集过程包括标记、转移和重定位三个阶段。标记阶段从GC Roots出发,找出直接引用的对象,放入活跃对象集合。并发标记阶段GC线程和应用线程并行运行,标记过程中可能有引用关系变化导致的漏标记问题,再标记阶段重新标记并发标记阶段变化的对象。初始转移和并发转移阶段将活跃对象复制到新内存,转移过程对象地址发生改变,在重定位阶段调整所有指向对象旧地址的指针。

6. 垃圾收集算法:ZGC采用标记-整理算法,将存活对象移动到堆的一侧,移动完成后回收边界以外的对象。在JDK 16之前,ZGC预留了一块堆内存,以支持简单的并行收集算法,但存在预留内存的问题。JDK 16改进后支持就地搬移对象,无需预留空闲内存。尽管就地搬移带来了挑战,如考虑搬移对象顺序,但总体提高了GC表现。

ZGC的引入使并发性能大幅度提升,STW时间几乎只与GC Roots数量相关,不随堆大小和对象数量变化。ZGC的并发性能和内存管理技术显著改善了Java应用的垃圾回收效率,但其浮动垃圾问题仍然存在。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
LG棒棒糖GD580这么看书 lg gd580怎么用moto看小说 各种海鲜馅饺子大全 海鲜水饺都有什么馅儿的 用网上交易系统进行股票操作资金安全吗,我是在中信建投开的户 北京瀚正化妆学校包就业吗 通江车检在哪里,可以摩托车年审不? 摩托车年审在通江县哪里啊 我是四川省通江县人、我是摩托车驾驶证,以快到期,请问我在江苏无锡... 通江县哪里可以托运摩托车 我想开个网店,谁能帮我想个店铺名和广告语呀?店铺名最好多样话 什么都... ...店铺是卖化妆品的、我叫洋洋、麻烦大家帮我起个好听点的店铺名吧... 重新认识下JVM级别的本地缓存框架Guava Cache(2)——深入解读其容量限制... very在任何情况下都不与冠词连用对吗?why? 成事定理企业规范化管理的体系结构与成事定理 什么是成事定理? ...If you can move to another country forever. Where? Why... 成事定理的介绍 成事定理的推理 在vivox5锁屏界面怎么输入房客密码 乌鲁木齐有卖红南京香烟的吗?12一包、有些地方卖11 乌鲁木齐哪儿能买外国烟 在乌鲁木齐哪里可以买到烟丝? 我在新疆乌鲁木齐开个家商店,不知道在哪里可以进到烟 农村家里地契上名字有一个字错了, 怎样该? 乌鲁木齐哪有卖南京烟 六年级男生400米跑一分10秒好不好? 冬天在被子里玩手机,手机上水汽很多这样会不会弄坏? aworld和theword的区别aworld和theworld 本人高考结束了,选了广州现代信息工程职业技术学院,想了解下学校? "公主"这两个字要是当作QQ网名,可以变换成什么复杂点的字体吗? 可爱的,快乐的,关于公主的QQ网名及个性签名(QQ网名不重要,重要的是个性... 谁能帮我设计一套QQ网名,个性签名,头像,个人说明。要可爱,甜美一点的... 新大龟王踏板摩托车跑了700公里换了两次机油了,但每次加到700毫升就... 西继迅达(许昌)电梯有限公司西继迅达(许昌)电梯有限公司 想要问 西继迅达电梯公司规模大吗?想要去考察参观做代理 怎么联系啊... 台电TL-c3oo为什么连接不到电脑 华为mt7tl00擦上两种卡有显示紧急呼叫呢华为mt7t1oo是二手机上两种卡... 贷十万两年总共还了十一万八千元年率是多少? 十一万八千元减去十一万三千二百三十一等于多少 初次办理老年免费公交卡在哪里办 增值税税务筹划,哪些情况下可适用增值税零税率政策? 0税率的发票有什么用 适用零税率的有什么 0税率的票有什么用 精油按摩减肥的原理 精油按摩减肥有害吗 ...可以找回小米笔记本误删软件_小米笔记本误删恢复软件怎么找回... 康佳led42m3500pde有线连接怎么设置!移动的4M宽带! 影响选址的因素有哪些 选址应该考虑哪些因素