Class: PriorityMutex::Waiter
- Inherits:
-
Object
- Object
- PriorityMutex::Waiter
- Defined in:
- lib/priority_mutex.rb
Instance Attribute Summary collapse
-
#priority ⇒ Object
Returns the value of attribute priority.
Instance Method Summary collapse
- #<=>(other) ⇒ Object
-
#initialize(priority) ⇒ Waiter
constructor
A new instance of Waiter.
- #resume ⇒ Object
- #wait ⇒ Object
Constructor Details
#initialize(priority) ⇒ Waiter
Returns a new instance of Waiter.
19 20 21 22 |
# File 'lib/priority_mutex.rb', line 19 def initialize(priority) @priority = priority @queue = Queue.new end |
Instance Attribute Details
#priority ⇒ Object
Returns the value of attribute priority.
18 19 20 |
# File 'lib/priority_mutex.rb', line 18 def priority @priority end |
Instance Method Details
#<=>(other) ⇒ Object
23 24 25 |
# File 'lib/priority_mutex.rb', line 23 def <=>(other) self.priority <=> other.priority end |
#resume ⇒ Object
30 31 32 |
# File 'lib/priority_mutex.rb', line 30 def resume @queue.enq :go end |
#wait ⇒ Object
26 27 28 29 |
# File 'lib/priority_mutex.rb', line 26 def wait @queue.deq nil end |