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.
83 84 85 |
# File 'lib/threasy/work.rb', line 83 def initialize @queue = Queue.new end |
Instance Method Details
#clear ⇒ Object
102 103 104 |
# File 'lib/threasy/work.rb', line 102 def clear @queue.clear end |
#pop(seconds = 5) ⇒ Object
92 93 94 95 96 |
# File 'lib/threasy/work.rb', line 92 def pop(seconds = 5) timeout(seconds) { @queue.pop } rescue Timeout::Error nil end |
#push(item) ⇒ Object
87 88 89 90 |
# File 'lib/threasy/work.rb', line 87 def push(item) @queue << item true end |
#size ⇒ Object
98 99 100 |
# File 'lib/threasy/work.rb', line 98 def size @queue.size end |