排序
面试题:Java G1 相对于 CMS 有哪些进步的地方?
G1(Garbage First)垃圾收集器相较于CMS(Concurrent Mark-Sweep)在多个方面有所改进和进步,主要包括以下几个关键点: 1. 可预测的停顿时间 G1:设计目标之一是提供可预测的停顿时间。通过设...
面试题:Java 中如何判断对象是否是垃圾?不同实现方式有何区别?
在Java中,判断对象是否为垃圾(即不再被使用的对象)主要是通过垃圾收集器来完成的。垃圾收集器会自动追踪哪些对象是可达的,并回收那些不可达的对象所占用的内存空间。 判断对象是否为垃圾的...
面试题:Java 中常见的垃圾收集器有哪些?
在Java中,垃圾收集器是Java虚拟机(JVM)的一部分,负责自动管理内存,回收不再使用的对象所占用的内存。 随着Java的发展,出现了多种不同的垃圾收集器,每种都有其特定的应用场景和优化目标。...
面试题:你了解 Java 的 ZGC(Z Garbage Collector)吗?
ZGC,全称Z Garbage Collector,是自Java 11引入的一种可扩展的低延迟垃圾收集器。它的设计目标主要是为了满足大堆内存(多TB级别)的需求,同时保持非常低的停顿时间(通常在几毫秒内),从而...
面试题:Java 的 G1 垃圾回收流程是怎样的?
G1(Garbage First)垃圾收集器是为具有大内存的多处理器机器设计的一种服务器端垃圾收集器,旨在提供高吞吐量的同时,实现可预测的暂停时间目标。G1通过将堆划分为多个大小相等的区域(Region...
面试题:什么条件会触发 Java 的 young GC?
Young GC(也称为Minor GC),主要针对的是Java堆中的年轻代(Young Generation)进行垃圾回收。触发Young GC的条件主要包括以下几点: 1. Eden区空间不足 最常见的触发条件:当尝试在Eden区中...
面试题:为什么 G1 垃圾收集器不维护年轻代到老年代的记忆集?
G1垃圾收集器的设计初衷是为了高效管理大堆内存,同时提供可预测的停顿时间。 为了实现这些目标,G1引入了分区(Region)的概念,并且在不同代之间使用记忆集(Remembered Set, RS)来跟踪跨代...
面试题:什么是 Java 中的直接内存(堆外内存)?
在Java中,直接内存(也称为堆外内存)是指不位于JVM堆空间中的内存区域。它独立于Java堆之外,通常通过java.nio.ByteBuffer的allocateDirect方法或其他NIO工具类进行分配。直接内存允许数据存...
面试题:什么是 Java 中的 logging write barrier?
在Java中讨论的“write barrier”通常与垃圾回收(Garbage Collection, GC)机制相关,而不是直接与日志记录(logging)有关。一个write barrier是JVM为了支持某些类型的垃圾收集算法而实现的一...
面试题:JVM 由哪些部分组成?
Java虚拟机(JVM)是一个抽象的计算模型,其实现可以由不同的供应商提供,但所有的实现都遵循Java虚拟机规范。一个典型的JVM主要包括以下几个关键组件: 类加载器子系统(Class Loader Subsyste...
