class DatWorkerPool::LockedObject

Attributes

mutex[R]

Public Class Methods

new(object = nil) click to toggle source
# File lib/dat-worker-pool/locked_object.rb, line 8
def initialize(object = nil)
  @object = object
  @mutex  = Mutex.new
end

Public Instance Methods

set(new_object) click to toggle source
# File lib/dat-worker-pool/locked_object.rb, line 17
def set(new_object)
  @mutex.synchronize{ @object = new_object }
end
value() click to toggle source
# File lib/dat-worker-pool/locked_object.rb, line 13
def value
  @mutex.synchronize{ @object }
end
with_lock(&block) click to toggle source
# File lib/dat-worker-pool/locked_object.rb, line 21
def with_lock(&block)
  @mutex.synchronize{ block.call(@mutex, @object) }
end