Class: Rx::AnonymousSubscription
- Inherits:
-
Object
- Object
- Rx::AnonymousSubscription
- Includes:
- Subscription
- Defined in:
- lib/rx/subscriptions/subscription.rb
Instance Method Summary collapse
-
#initialize(&unsubscribe_action) ⇒ AnonymousSubscription
constructor
A new instance of AnonymousSubscription.
- #unsubscribe ⇒ Object
Methods included from Subscription
Constructor Details
#initialize(&unsubscribe_action) ⇒ AnonymousSubscription
Returns a new instance of AnonymousSubscription.
27 28 29 30 31 |
# File 'lib/rx/subscriptions/subscription.rb', line 27 def initialize(&unsubscribe_action) @unsubscribe_action = unsubscribe_action @gate = Mutex.new @unsubscribed = false end |
Instance Method Details
#unsubscribe ⇒ Object
33 34 35 36 37 38 39 40 |
# File 'lib/rx/subscriptions/subscription.rb', line 33 def unsubscribe should_unsubscribe = false @gate.synchronize do should_unsubscribe = !@unsubscribed end @unsubscribe_action.call if should_unsubscribe end |