summaryrefslogtreecommitdiff
path: root/ractor.c
diff options
context:
space:
mode:
Diffstat (limited to 'ractor.c')
-rw-r--r--ractor.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/ractor.c b/ractor.c
index 372305c256..b5835a8ca6 100644
--- a/ractor.c
+++ b/ractor.c
@@ -1420,9 +1420,15 @@ cancel_single_ractor_mode(void)
// enable multi-ractor mode
RUBY_DEBUG_LOG("enable multi-ractor mode", 0);
+ VALUE was_disabled = rb_gc_enable();
+
rb_gc_start();
rb_transient_heap_evacuate();
+ if (was_disabled) {
+ rb_gc_disable();
+ }
+
ruby_single_main_ractor = NULL;
if (rb_warning_category_enabled_p(RB_WARN_CATEGORY_EXPERIMENTAL)) {