JVM内存模型和性能调优:Eden Survivor名称由来- 第17篇

前言

       这一节我们来讲有趣的故事,有助于大家对于堆中的这些有一定的了解。

 

一、名词

Eden

含义:伊甸园(The garden of Eden)

Survivor

含义:幸存者

GC

含义:Garbage Collection

Stop the world event

含义:地球停转事件,简称STW,即在执行垃圾收集算法时,Java应用程序的其他所有除了垃圾收集收集器线程之外的线程都被挂起。

 

二、《创世纪》里的几个小故事

2.1 上帝创造人类

上帝花了六天时间去创造万物,在第六天他按照自己的形象创造出人类(亚当),后来他感觉亚当一个人有点孤独,于是使用亚当的一根肋骨创造出了夏娃。并且把他们和很多动物植物都放在一个叫做伊甸园(The garden of Eden)。

 

JVM内存模型和性能调优:Eden Survivor名称由来- 第17篇

2.2 亚当夏娃偷吃善恶果

上帝告诉亚当和夏娃不要偷吃善恶树上的果子,但是在撒旦的诱惑下他们还是偷吃了,于是上帝把他们赶出了伊甸园。

JVM内存模型和性能调优:Eden Survivor名称由来- 第17篇

2.3 该隐和他的弟弟

       亚当和夏娃有两个儿子,一个叫该隐,一个叫亚伯。该隐因为一件事嫉妒亚伯,把自己的弟弟亚伯给杀了。

JVM内存模型和性能调优:Eden Survivor名称由来- 第17篇

2.4 诺亚方舟

上帝感到人类的罪恶深重,于是他决定来一次大清洗,他的办法很简单——使用洪水(GC)。在这之前他让诺亚造了一个大船(诺亚方舟),在洪水来到的时候登上船的人和动物都没有死去(Survivor)。这些人和动物都开始重建家园。

JVM内存模型和性能调优:Eden Survivor名称由来- 第17篇

三、《创世纪》和JVM的对于关系

如果把《创世纪》中的人和动物比作JVM堆内存中的对象的话,还是列个表:

JVM内存模型和性能调优:Eden Survivor名称由来- 第17篇