final class MultiAssignCancelable extends Multi
Represents a Cancelable whose underlying cancelable reference can be swapped for another.
Example:
val s = MultiAssignmentCancelable() s := c1 // sets the underlying cancelable to c1 s := c2 // swaps the underlying cancelable to c2 s.cancel() // also cancels c2 s := c3 // also cancels c3, because s is already canceled
Also see:
- SerialCancelable, which is similar, except that it cancels the old cancelable upon assigning a new cancelable
- SingleAssignCancelable that is effectively a forward reference that can be assigned at most once
- OrderedCancelable that's very similar with
MultiAssignCancelable
, but with the capability of forcing ordering on concurrent updates
- Alphabetic
- By Inheritance
- MultiAssignCancelable
- Multi
- Bool
- BooleanCancelable
- AssignableCancelable
- Cancelable
- Serializable
- 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 :=(value: Cancelable): MultiAssignCancelable.this.type
Updates the internal reference of this assignable cancelable to the given value.
Updates the internal reference of this assignable cancelable to the given value.
If this cancelable is already canceled, then
value
is going to be canceled on assignment as well.- returns
this
- Definition Classes
- MultiAssignCancelable → AssignableCancelable
- Annotations
- @tailrec()
- 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
- MultiAssignCancelable → Cancelable
- def clear(): Cancelable
Clears the underlying reference, setting it to a Cancelable.empty (if not cancelled).
Clears the underlying reference, setting it to a Cancelable.empty (if not cancelled).
This is equivalent with:
ref := Cancelable.empty
The purpose of this method is to release any underlying reference for GC purposes, however if the underlying reference is a dummy then the assignment doesn't happen because we don't care about releasing dummy references.
- Annotations
- @tailrec()
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): 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[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def isCanceled: Boolean
- returns
true in case this cancelable hasn't been canceled, or false otherwise.
- Definition Classes
- MultiAssignCancelable → BooleanCancelable
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- 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(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
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.catnap exposes pure abstractions built on top of the Cats-Effect type classes:
monix.eval is for dealing with evaluation of results, thus exposing Task and Coeval.
monix.reactive exposes the
Observable
pattern:Observable
implementationsmonix.tail exposes Iterant for purely functional pull based streaming:
Batch
andBatchCursor
, the alternatives to Scala'sIterable
andIterator
respectively that we are using within Iterant's encodingYou can control evaluation with type you choose - be it Task, Coeval, cats.effect.IO or your own as long as you provide correct cats-effect or cats typeclass instance.