Use `mrb_field_write_barrier` instead of `mrb_write_barrier` for `push`.
When the array is very big, the simpler `mrb_write_barrier` causes calling `gc_mark_children` for big arrays repeatedly. That would hinder performance very badly.
Showing
Please register or sign in to comment