11

常见的 GC 算法介绍(Parallel/CMS/G1):温故而知新

 4 years ago
source link: https://kimmking.blog.csdn.net/article/details/108728974
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

常见的 GC 算法介绍(Parallel/CMS/G1):温故而知新

original.png
kimmking 2020-09-22 12:06:59 articleReadEyes.png 140
分类专栏: JVM 核心技术 32 讲

GC 是英文词汇 Garbage Collection 的缩写,中文一般直译为“垃圾收集”。当然有时候为了让文字更流畅,也会说“垃圾回收”。一般认为“垃圾回收”和“垃圾收集”是同样的意思。此外,GC 也有“垃圾收集器”的意思,英文表述为 Garbage Collector。本节我们就来详细讲解常用的 GC 算法。

f37a9c99-3c14-4c8c-b285-0130a598c756.jpg

假如我们做生意,需要仓库来存放物资。如果所有仓库都需要公司自建,那成本就太高了,一般人玩不转,而且效率也不高,成本控制不好就很难赚到钱。所以现代社会就有了一种共享精神和租赁意识,大幅度提高了整个社会的资源利用率。

比如说一条供应链,A 公司转给 B 公司,B 公司转给 C 公司,那么每个公司自己的加工车间和私有仓库,就类似于线程空间,工厂内部会有相应的流水线。因为每个公司/业务员的精力有限,这个私有空间不可能无限大。

公共的仓库,就类似于堆内存,相比私有空间要大很多,而且很方便别的公司来存取物资,或者可以直接存取,或者加锁需要钥匙才能存取。 很明显,这个体系需要进行有效的管理,整个仓储系统才能良好运转。不再使用的仓库需要去打个招呼说我们不用了,要不然公司需要一直付费,实际上是浪费的公司的钱,也在浪费社会的资源。这就类似于内存释放。

也可以使用创客空间的共享工位做类比,工位(内存)是有限的且固定的。大家都可以来租赁(申请内存),拿


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK