JezK
Edit File: attr_volatile-i.ri
U:RDoc::AnyMethod[iI"attr_volatile:EFI"9Concurrent::ThreadSafe::Util::Volatile#attr_volatile;FF:publico:RDoc::Markup::Document:@parts[ o:RDoc::Markup::Paragraph; [I"NProvides +volatile+ (in the JVM's sense) attribute accessors implemented ;TI"+atop of +Concurrent::AtomicReference+.;To:RDoc::Markup::BlankLine o; ; [I"Usage:;To:RDoc::Markup::Verbatim; [I"class Foo ;TI"5 extend Concurrent::ThreadSafe::Util::Volatile ;TI" attr_volatile :foo, :bar ;TI" ;TI" def initialize(bar) ;TI"g super() # must super() into parent initializers before using the volatile attribute accessors ;TI" self.bar = bar ;TI" end ;TI" ;TI" def hello ;TI"& my_foo = foo # volatile read ;TI"' self.foo = 1 # volatile write ;TI"0 cas_foo(1, 2) # => true | a strong CAS ;TI" end ;TI"end;T:@format0: @fileI"0lib/concurrent/thread_safe/util/volatile.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(*attr_names);T@$FI" Volatile;FcRDoc::NormalModule00