Class ThreadSafe::Util::VolatileTuple
In: lib/thread_safe/util/volatile_tuple.rb
Parent: Object

A fixed size array with volatile volatile getters/setters. Usage:

  arr = VolatileTuple.new(16)
  arr.volatile_set(0, :foo)
  arr.volatile_get(0)    # => :foo
  arr.cas(0, :foo, :bar) # => true
  arr.volatile_get(0)    # => :bar

Methods

cas   compare_and_set   each   new   size   volatile_get   volatile_set  

Included Modules

Enumerable

Constants

Tuple = defined?(Rubinius::Tuple) ? Rubinius::Tuple : Array

Public Class methods

Public Instance methods

cas(i, old_value, new_value)

Alias for compare_and_set

[Validate]