Class: Webmidi::CallbackSubscription
- Inherits:
-
Object
- Object
- Webmidi::CallbackSubscription
- Defined in:
- lib/webmidi/callback_subscription.rb
Instance Method Summary collapse
- #active? ⇒ Boolean
-
#initialize(&unsubscribe) ⇒ CallbackSubscription
constructor
A new instance of CallbackSubscription.
- #unsubscribe ⇒ Object
Constructor Details
#initialize(&unsubscribe) ⇒ CallbackSubscription
Returns a new instance of CallbackSubscription.
5 6 7 8 9 |
# File 'lib/webmidi/callback_subscription.rb', line 5 def initialize(&unsubscribe) @unsubscribe = unsubscribe @active = true @mutex = Mutex.new end |
Instance Method Details
#active? ⇒ Boolean
22 23 24 |
# File 'lib/webmidi/callback_subscription.rb', line 22 def active? @mutex.synchronize { @active } end |
#unsubscribe ⇒ Object
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/webmidi/callback_subscription.rb', line 11 def unsubscribe callback = @mutex.synchronize do return false unless @active @active = false @unsubscribe end callback.call true end |