Class: Utils::Lock

Inherits:
Object
  • Object
show all
Defined in:
lib/utils/lock.rb

Instance Method Summary collapse

Constructor Details

#initializeLock

Returns a new instance of Lock.



3
4
5
# File 'lib/utils/lock.rb', line 3

def initialize
  @locked=false
end

Instance Method Details

#acquireObject



7
8
9
10
11
12
13
# File 'lib/utils/lock.rb', line 7

def acquire
  if !locked?
    lock
    yield
    unlock
  end
end

#lockObject



15
16
17
18
# File 'lib/utils/lock.rb', line 15

def lock
  @locked = true
  self
end

#locked?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/utils/lock.rb', line 25

def locked?
  @locked
end

#unlockObject



20
21
22
23
# File 'lib/utils/lock.rb', line 20

def unlock
  @locked = false
  self
end