星海

JVM · 单选题 · 第 28 题

Java 后端开发面试 · 第 28 题

关于 ZGC,下列说法正确的是?

  1. A通过适当延长每次 STW 停顿的时间来换取更高的吞吐量,适合离线的大数据批处理任务
  2. B只能在 32 位 JVM 上使用,堆最大不能超过 4GB,所以不适合大内存服务
  3. C目标是在很大的堆上也保持毫秒级以下的停顿,标记和整理等工作大多与应用线程并发
  4. D不做任何内存整理,只依靠标记-清除回收内存,长期运行后碎片会越来越多

答案

C C. 目标是在很大的堆上也保持毫秒级以下的停顿,标记和整理等工作大多与应用线程并发

解析

ZGC 用染色指针和读写屏障,让对象移动也能与应用线程并发进行,停顿时间基本不随堆大小增长,可以支持 TB 级的堆。JDK 21 引入分代 ZGC,JDK 23 起它成为默认模式,JDK 24 移除了非分代模式。它以少量吞吐和 CPU 开销换取极低延迟,适合对延迟敏感的服务。

在线刷这套题:即时判分、错题本、闪卡复习,不用登录就能练。