|
@@ -720,6 +720,18 @@ collect_white(obj) {
|
|
|
|
|
|
|
|
## GC复制算法
|
|
## GC复制算法
|
|
|
|
|
|
|
|
|
|
+只把某个空间里的活动对象复制到其他空间,把原空间里的所有其他对象都回收掉
|
|
|
|
|
+
|
|
|
|
|
+> 原空间称之为 **From空间**,新空间称之为 **To空间**
|
|
|
|
|
+
|
|
|
|
|
+### 算法
|
|
|
|
|
+
|
|
|
|
|
+GC复制算法是利用 From空间 进行分配的, 当 From空间 被完全占满时, GC会将活动对象全部复制到 TO空间。当复制完成后, From空间 和 To空间 互换,GC也就结束了
|
|
|
|
|
+
|
|
|
|
|
+From空间 和 To空间 大小必须一致,这是为了保证 From空间 中所有活动对象都收纳到 To空间 里
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
## GC标记-压缩算法
|
|
## GC标记-压缩算法
|