class Concurrent::JavaAtomicFixnum
@!macro atomic_fixnum
def compare_and_set(expect, update)
@!macro atomic_fixnum_method_compare_and_set
def compare_and_set(expect, update) @atomic.compare_and_set(expect, update) end
def decrement
@!macro atomic_fixnum_method_decrement
def decrement @atomic.decrement_and_get end
def increment
@!macro atomic_fixnum_method_increment
def increment @atomic.increment_and_get end
def initialize(init = 0)
@!macro atomic_fixnum_method_initialize
def initialize(init = 0) raise ArgumentError.new('initial value must be a Fixnum') unless init.is_a?(Fixnum) @atomic = java.util.concurrent.atomic.AtomicLong.new(init) end
def value
@!macro atomic_fixnum_method_value
def value @atomic.get end
def value=(value)
@!macro atomic_fixnum_method_value_eq
def value=(value) raise ArgumentError.new('value must be a Fixnum') unless value.is_a?(Fixnum) @atomic.set(value) end