Class: Threasy::Work::TimeoutQueue

Inherits:
Object
  • Object
show all
Includes:
Timeout
Defined in:
lib/threasy/work.rb

Instance Method Summary collapse

Constructor Details

#initializeTimeoutQueue



113
114
115
# File 'lib/threasy/work.rb', line 113

def initialize
  @queue = Queue.new
end

Instance Method Details

#clearObject



132
133
134
# File 'lib/threasy/work.rb', line 132

def clear
  @queue.clear
end

#pop(seconds = 5) ⇒ Object



122
123
124
125
126
# File 'lib/threasy/work.rb', line 122

def pop(seconds = 5)
  timeout(seconds) { @queue.pop }
rescue Timeout::Error
  nil
end

#push(item) ⇒ Object



117
118
119
120
# File 'lib/threasy/work.rb', line 117

def push(item)
  @queue << item
  true
end

#sizeObject



128
129
130
# File 'lib/threasy/work.rb', line 128

def size
  @queue.size
end