Module: Concurrent::Synchronization::MriAttrVolatile
- Defined in:
- lib/concurrent/synchronization/mri_object.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
5 6 7 |
# File 'lib/concurrent/synchronization/mri_object.rb', line 5 def self.included(base) base.extend(ClassMethods) end |
Instance Method Details
#full_memory_barrier ⇒ Object
27 28 29 30 |
# File 'lib/concurrent/synchronization/mri_object.rb', line 27 def # relying on undocumented behavior of CRuby, GVL acquire has lock which ensures visibility of ivars # https://github.com/ruby/ruby/blob/ruby_2_2/thread_pthread.c#L204-L211 end |