12、对象创建全家桶:JVM中对象创建的模式及最佳实践

你好,我是康杨。 今天我们一起站在对象创建的视角,看看JVM为我们提供了哪些能力,还有怎么更好的应用这些能力。我们也会聊一下,创建对象需要考虑的因素以及对象创建对对象回收的影响。 首先我们从一个实际的场景开始,假设你是某一个在线阅读网站的程序员,老板...

云时代的JVM原理与实战

13、对象回收(上):如何定位待回收的对象

你好,我是康杨。 在前面几节课中我们主要聊的是对象的创建,也提到了对象的创建与回收相辅相成,相互影响。从今天开始,我们就重点谈一谈对象的回收,也就是 GC。 所谓垃圾是指对象已经结束了它在运行态下的生命周期,但是依然占据着运行态下堆内存的空间。此时,...

云时代的JVM原理与实战

14、垃圾回收(下):揭秘垃圾回收中的算法

你好,我是康杨。 上节课我们聊了JVM是如何定位一个待回收的对象的,这节课我们继续看针对已经定位的垃圾对象JVM是如何进行回收的,也就是JVM中的垃圾回收算法。 垃圾回收算法种类很多,它是不断演进的各种垃圾回收器的理论基础。掌握垃圾回收算法,能帮助我...

云时代的JVM原理与实战

15、垃圾回收器:为什么G1被叫做GC中的王者

你好,我是康杨。 今天我们继续聊GC的话题。我们将选择一个具体的垃圾回收器进行深入的分析,这个选定的主角就是G1,也被称为Garbage First。 为什么选择G1?在当前的生产环境中,JDK 8仍是被广泛采用的版本,在JDK 8时代,CMS和G1...

云时代的JVM原理与实战

16、垃圾回收器(下):面向未来的ZGC、Shenandoah

你好,我是康杨。 今天我们继续来聊GC的话题,上一节课我们介绍了当前生产环境中GC的王者G1,还记得它的特点吗?没错,就是垃圾优先、可预见性、并行、分区分代,我们也说过G1是一个承前启后的垃圾回收器,而它启的这个后就是ZGC和Shenandoah,也...

云时代的JVM原理与实战

17、偷龙转凤:JVM中的扩展之道

你好,我是康杨,今天我们一起来聊聊JVM为我们提供的扩展机制。 前面我们介绍了JVM的对象模型、类加载机制、SPI等,这些都是JVM为了帮助我们写出更优雅的Java程序所提供的各种功能。但是掌握这些功能,了解它们背后的原理,还远远没办法支撑我们写出满...

云时代的JVM原理与实战
123457