Represents a Cancelable that can queried for the canceled status.
Represents a composite of multiple cancelables.
Represents a monifu.concurrent.Cancelable whose underlying cancelable reference can be swapped for another.
Represents a monifu.concurrent.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
Represents a Cancelable
that only executes the canceling logic when all
dependent cancelable objects have been canceled.
Represents a Cancelable
that only executes the canceling logic when all
dependent cancelable objects have been canceled.
After all dependent cancelables have been canceled, onCancel
gets called.
Represents a monifu.concurrent.Cancelable that can be assigned only once to another cancelable reference.
Represents a monifu.concurrent.Cancelable that can be assigned only once to another cancelable reference.
Similar to monifu.concurrent.cancelables.MultiAssignmentCancelable, except that
in case of multi-assignment, it throws a java.lang.IllegalStateException
.
If the assignment happens after this cancelable has been canceled, then on assignment the reference will get canceled too.
Useful in case you need a forward reference.
Represents a composite of multiple cancelables. In case it is canceled, all contained cancelables will be canceled too, e.g...
Additionally, once canceled, on appending of new cancelable references, those references will automatically get canceled too:
Adding and removing references from this composite is thread-safe.