C语言垃圾回收(Garbage Collection)

C语言的垃圾回收

这里介绍 Mark-And-Sweep Collection (McCarthy, 1960)

如下图,红色表示需要回收的,也被叫做non-reachable。绿色的node表示在heap外的指针

C语言垃圾回收(Garbage Collection)_第1张图片

接下来是Mark的部分,每个block留出一个bit。见下图

C语言垃圾回收(Garbage Collection)_第2张图片

 

下面是具体的算法: Mark & Sweep

 

 

 

 

 

 

 

你可能感兴趣的:(golang,c语言,golang)