class SidekiqUniqueJobs::Locksmith
def enqueue(conn)
-
(yield
- when successfully enqueued) -
(nil)
- when redis was already prepared for this lock
Parameters:
-
conn
(Redis
) -- a redis connection
def enqueue(conn) queued_token, elapsed = timed do call_script(:queue, key.to_a, argv, conn) end validity = config.pttl - elapsed - drift(config.pttl) return unless queued_token && (validity >= 0 || config.pttl.zero?) write_lock_info(conn) yield end