Sha256: e27f8cbd5ac93d84ed05ab8ed49dbf0fda039518ccd676453752523a66dff089

Contents?: true

Size: 512 Bytes

Versions: 8

Compression:

Stored size: 512 Bytes

Contents

# frozen_string_literal: true

# @api private
# @since 1.0.0
module RedisQueuedLocks::Acquier::AcquireLock::DelayExecution
  # Sleep with random time-shifting (it is necessary for empty lock-acquirement time slots).
  #
  # @param retry_delay [Integer] In milliseconds
  # @param retry_jitter [Integer] In milliseconds
  # @return [void]
  #
  # @api private
  # @since 1.0.0
  def delay_execution(retry_delay, retry_jitter)
    delay = (retry_delay + rand(retry_jitter)).to_f / 1_000
    sleep(delay)
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
redis_queued_locks-1.12.1 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.12.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.11.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.10.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.9.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.8.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.7.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb
redis_queued_locks-1.2.0 lib/redis_queued_locks/acquier/acquire_lock/delay_execution.rb