diff options
| author | Koichi Sasada <ko1@atdot.net> | 2020-12-07 11:27:25 +0900 |
|---|---|---|
| committer | Koichi Sasada <ko1@atdot.net> | 2020-12-07 11:27:25 +0900 |
| commit | 0ebf6bd0a26b637f019d480ecd7f00a73c416b58 (patch) | |
| tree | eae25239f844c5ef47c4ef6c6b3a2d1ded077841 /spec/ruby/core/kernel/lambda_spec.rb | |
| parent | 8dd03e5cf0d583ffb836cf27be5645a7d88ac736 (diff) | |
RB_VM_LOCK_ENTER_NO_BARRIER
Write barrier requires VM lock because it accesses VM global bitmap
but RB_VM_LOCK_ENTER() can invoke GC because another ractor can wait
to invoke GC and RB_VM_LOCK_ENTER() is barrier point. This means that
before protecting by a write barrier, GC can invoke.
To prevent such situation, RB_VM_LOCK_ENTER_NO_BARRIER() is introduced.
This lock primitive does not become GC barrier points.
Diffstat (limited to 'spec/ruby/core/kernel/lambda_spec.rb')
0 files changed, 0 insertions, 0 deletions
