Class: Threasy::Work::TimeoutQueue
- Inherits:
-
Object
- Object
- Threasy::Work::TimeoutQueue
- Includes:
- Timeout
- Defined in:
- lib/threasy/work.rb
Instance Method Summary collapse
- #clear ⇒ Object
-
#initialize ⇒ TimeoutQueue
constructor
A new instance of TimeoutQueue.
- #pop(seconds = 5) ⇒ Object
- #push(item) ⇒ Object
- #size ⇒ Object
Constructor Details
#initialize ⇒ TimeoutQueue
Returns a new instance of TimeoutQueue.
122 123 124 |
# File 'lib/threasy/work.rb', line 122 def initialize @queue = Queue.new end |
Instance Method Details
#clear ⇒ Object
141 142 143 |
# File 'lib/threasy/work.rb', line 141 def clear @queue.clear end |
#pop(seconds = 5) ⇒ Object
131 132 133 134 135 |
# File 'lib/threasy/work.rb', line 131 def pop(seconds = 5) timeout(seconds) { @queue.pop } rescue Timeout::Error nil end |
#push(item) ⇒ Object
126 127 128 129 |
# File 'lib/threasy/work.rb', line 126 def push(item) @queue << item true end |
#size ⇒ Object
137 138 139 |
# File 'lib/threasy/work.rb', line 137 def size @queue.size end |