diff options
author | Koichi Sasada <[email protected]> | 2020-12-05 06:15:17 +0900 |
---|---|---|
committer | Koichi Sasada <[email protected]> | 2020-12-07 08:28:36 +0900 |
commit | 307732ccee7f9f28f8422bab2f839da021d8cdec (patch) | |
tree | f39ec33d41cbcbaf07bcc1a8d34dc3047357ca6e /transient_heap.h | |
parent | b67b24d0f5e78481e6a306881b6858f0dec996ba (diff) |
cancel theap on multi-ractors
accessing theap needs complicating synchronization but it reduce
performance on multi-ractor mode. So simply stop using theap
on multi-ractor mode. In future, theap should be replaced with
more cleaver memory strategy.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/3842
Diffstat (limited to 'transient_heap.h')
-rw-r--r-- | transient_heap.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/transient_heap.h b/transient_heap.h index 363e7a2da2..4ac52aad07 100644 --- a/transient_heap.h +++ b/transient_heap.h @@ -31,6 +31,9 @@ void rb_transient_heap_start_marking(int full_marking); void rb_transient_heap_finish_marking(void); void rb_transient_heap_update_references(void); +/* used by ractor.c */ +void rb_transient_heap_evacuate(void); + /* for debug API */ void rb_transient_heap_dump(void); void rb_transient_heap_verify(void); @@ -49,6 +52,7 @@ void rb_struct_transient_heap_evacuate(VALUE st, int promote); #define rb_transient_heap_promote(obj) ((void)0) #define rb_transient_heap_start_marking(full_marking) ((void)0) #define rb_transient_heap_update_references() ((void)0) +#define rb_transient_heap_evacuate() ((void)0) #define rb_transient_heap_finish_marking() ((void)0) #define rb_transient_heap_mark(obj, ptr) ((void)0) |