排序
面试题:Java 中常见的垃圾收集器有哪些?
在Java中,垃圾收集器是Java虚拟机(JVM)的一部分,负责自动管理内存,回收不再使用的对象所占用的内存。 随着Java的发展,出现了多种不同的垃圾收集器,每种都有其特定的应用场景和优化目标。...
面试题:你了解 Java 的 ZGC(Z Garbage Collector)吗?
ZGC,全称Z Garbage Collector,是自Java 11引入的一种可扩展的低延迟垃圾收集器。它的设计目标主要是为了满足大堆内存(多TB级别)的需求,同时保持非常低的停顿时间(通常在几毫秒内),从而...
面试题:JVM 方法区是否会出现内存溢出?
是的,JVM的方法区也可能会出现内存溢出的情况。方法区主要用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码缓存等数据。 在不同的JVM实现和版本中,方法区的具体实现...
面试题:JVM 垃圾回收时产生的 concurrent mode failure 的原因是什么?
在使用CMS(Concurrent Mark-Sweep)垃圾收集器时,'Concurrent Mode Failure'(并发模式失败)是一个重要的概念。这种失败通常发生在CMS尝试以并发模式执行老年代的垃圾回收时,但由于某些原因...
面试题:Java 中的强引用、软引用、弱引用和虚引用分别是什么?
在Java中,引用类型主要包括强引用(Strong Reference)、软引用(Soft Reference)、弱引用(Weak Reference)和虚引用(Phantom Reference)。每种引用类型都有其特定的用途和应用场景,下面...
面试题:Java 的 CMS 垃圾回收流程是怎样的?
CMS(Concurrent Mark-Sweep)垃圾收集器是为了解决老年代垃圾回收问题而设计的一种低延迟的垃圾收集器。它的主要目标是在执行垃圾收集时尽量减少“Stop the World”事件的发生,从而降低应用的...
面试题:JVM 的内存区域是如何划分的?
VM(Java虚拟机)的内存区域主要划分为以下几个部分,每个部分都有其特定的用途和生命周期: 程序计数器(Program Counter Register): 每个线程都有一个独立的程序计数器,用于记录当前线程执...
面试题:什么是 Java 的 PLAB?
在Java虚拟机(JVM)的垃圾收集(Garbage Collection, GC)过程中,PLAB指的是Promotion Local Allocation Buffer(晋升本地分配缓冲区)。PLAB主要用于并行垃圾收集器中,特别是在处理年轻代到...
面试题:你了解 Java 的逃逸分析吗?
逃逸分析是 Java 虚拟机(JVM)在运行时进行的一项动态分析技术,主要用于判断一个对象的引用是否可能“逃逸”出当前线程或方法的范围。 如果 JVM 能够确定一个对象不会逃逸到其他线程或方法中...
面试题:Java 的 G1 垃圾回收流程是怎样的?
G1(Garbage First)垃圾收集器是为具有大内存的多处理器机器设计的一种服务器端垃圾收集器,旨在提供高吞吐量的同时,实现可预测的暂停时间目标。G1通过将堆划分为多个大小相等的区域(Region...
