aboutsummaryrefslogtreecommitdiff
path: root/gc.cpp
diff options
context:
space:
mode:
authorTeddy <ted.sybil@gmail.com>2013-08-14 15:34:03 +0800
committerTeddy <ted.sybil@gmail.com>2013-08-14 15:34:03 +0800
commitbe368fbac6b8d80033ccb8e4138b55c4b0954c34 (patch)
treec36d4418568b30eccba02788bc86ec55404fcebb /gc.cpp
parent4c083e4776a7bff4683dc3f64d7ccd83dbb3d235 (diff)
ready for alpha 2
Diffstat (limited to 'gc.cpp')
-rw-r--r--gc.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/gc.cpp b/gc.cpp
index 775463f..ee3eb6f 100644
--- a/gc.cpp
+++ b/gc.cpp
@@ -151,6 +151,13 @@ void GarbageCollector::cycle_resolve() {
#ifdef GC_INFO
fprintf(stderr, "GC: cycle resolved.\n");
#endif
+}
+
+void GarbageCollector::collect() {
+ force();
+ if (mapping.size() < resolve_threshold)
+ return;
+ cycle_resolve();
force();
}