Module: RubyRedisLock

Included in:
Redis
Defined in:
lib/ruby_redis_lock/version.rb,
lib/ruby_redis_lock/ruby_redis_lock.rb

Constant Summary collapse

VERSION =
"0.1.2"
LOCK_KEY_BASE =
"RubyRedisLock".freeze
LockAcquisitionTimeoutException =
Class.new(StandardError)

Instance Method Summary collapse

Instance Method Details

#lock(lock_name, processing_timeout = 60, acquiring_timout = 10) ⇒ Object



6
7
8
9
10
11
# File 'lib/ruby_redis_lock/ruby_redis_lock.rb', line 6

def lock(lock_name, processing_timeout=60, acquiring_timout=10)
  lock_acquired = acquire_lock(lock_name, processing_timeout, acquiring_timout)
  yield
ensure
  release_lock(lock_name, processing_timeout) if lock_acquired
end