Sha256: 347942ff532aec105b6db249c1056a48a703f5c534d8a91c3502a6be38e6fc1f

Contents?: true

Size: 399 Bytes

Versions: 12

Compression:

Stored size: 399 Bytes

Contents

class Resque::ThreadSignal
  def initialize
    @mutex = Mutex.new
    @signaled = false
    @received = ConditionVariable.new
  end

  def signal
    @mutex.synchronize do
      @signaled = true
      @received.signal
    end
  end

  def wait_for_signal(timeout)
    @mutex.synchronize do
      unless @signaled
        @received.wait(@mutex, timeout)
      end

      @signaled
    end
  end
end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
resque-2.7.0 lib/resque/thread_signal.rb
resque-2.6.0 lib/resque/thread_signal.rb
resque-2.5.0 lib/resque/thread_signal.rb
resque-2.4.0 lib/resque/thread_signal.rb
resque-2.3.0 lib/resque/thread_signal.rb
resque-2.2.1 lib/resque/thread_signal.rb
resque-2.2.0 lib/resque/thread_signal.rb
resque-2.1.0 lib/resque/thread_signal.rb
resque-2.0.0 lib/resque/thread_signal.rb
resque_admin-1.0.4 lib/resque_admin/thread_signal.rb
resque_admin-1.0.3 lib/resque/thread_signal.rb
resque_admin-1.0.2 lib/resque/thread_signal.rb