包含 JVM 标签的文章

继承关系的类初始化和实例化的顺序

继承关系的类初始化和实例化的顺序正如曾有评论所言,我们学习的重点在于思路。很多人都知道继承关系中类的初始化和实例化顺序,但如果忘记了怎么办?如何自己找到答案?又或者遇到的问题是关于泛型擦除,又该如何分析?思路才是重点。暂且不论泛型擦除,先看继承。首先给出...

堆外内存的回收机制分析

堆外内存JVM 启动时分配的内存称为堆内存(Heap Memory),与之相对的是堆外内存(Off-Heap Memory)。在代码中,我们可以直接使用堆外内存,例如 Netty 框架就广泛使用了堆外内存来提升性能。但这部分内存并不归 JVM 管理,GC...

JVM之ParNew和CMS日志分析

引言本文主要针对生产环境中(Java 7)常用的两种垃圾收集器——ParNew(年轻代)与CMS(老年代),从日志信息的角度进行分析与总结。目的是帮助开发者在排查问题时,能够准确解读 GC 日志,清楚识别 GC 线程当前所处的阶段及其具体行为。ParNe...

Concurrent Mark Sweep (CMS) Collector

并发标记扫描(CMS)收集器并发标记扫描(Concurrent Mark Sweep,CMS)收集器专为希望缩短垃圾收集暂停时间,并愿意在应用程序运行时与垃圾收集器共享处理器资源的应用场景而设计。通常,拥有相对较大的老年代(Tenured Generat...