final class SingleAssignmentSubscription extends Subscription
Represents a org.reactivestreams.Subscription
that can be assigned
only once to another subscription reference.
If the assignment happens after this subscription has been canceled, then on
assignment the reference will get canceled too. If the assignment
after request(n)
has been called on this subscription, then
request(n)
will get called immediately on the assigned reference as well.
Useful in case you need a thread-safe forward reference.
- Alphabetic
- By Inheritance
- SingleAssignmentSubscription
- Subscription
- Cancelable
- Serializable
- Serializable
- Subscription
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
- def :=(s: org.reactivestreams.Subscription): Unit
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
cancel(): Unit
Cancels the unit of work represented by this reference.
Cancels the unit of work represented by this reference.
Guaranteed idempotency - calling it multiple times should have the same side-effect as calling it only once. Implementations of this method should also be thread-safe.
- Definition Classes
- SingleAssignmentSubscription → Cancelable → Subscription
- Annotations
- @tailrec()
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
request(n: Long): Unit
No events will be sent by a
Publisher
until demand is signaled via this method.No events will be sent by a
Publisher
until demand is signaled via this method.It can be called however often and whenever needed. Whatever has been requested can be sent by the
Publisher
so only signal demand for what can be safely handled.A
Publisher
can send less than is requested if the stream ends but then must emit eitheronError
oronComplete
.The
Subscriber
MAY call this method synchronously in the implementation of itsonSubscribe
/onNext
methods, therefore the effects of this function must be asynchronous, otherwise it could lead to a stack overflow.- n
signals demand for the number of
onNext
events that theSubscriber
wants, if positive, then thePublisher
is bound by contract to not send more than this number ofonNext
events and if negative, then this signals to thePublisher
that it may send an infinite number of events, until the subscription gets cancelled or the stream is complete.
- Definition Classes
- SingleAssignmentSubscription → Subscription → Subscription
- Annotations
- @tailrec()
- def set(s: org.reactivestreams.Subscription): Unit
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
This is the API documentation for the Monix library.
Package Overview
monix.execution exposes lower level primitives for dealing with asynchronous execution:
Atomic
types, as alternative tojava.util.concurrent.atomic
monix.eval is for dealing with evaluation of results, thus exposing Task and Coeval.
monix.reactive exposes the
Observable
pattern:Observable
implementationsmonix.types implements type-class shims, to be translated to type-classes provided by libraries such as Cats or Scalaz.
monix.cats is the optional integration with the Cats library, providing translations for the types described in
monix.types
.monix.scalaz is the optional integration with the Scalaz library, providing translations for the types described in
monix.types
.