object CancelableFuture extends CancelableFutureForPlatform with Serializable
- Source
- CancelableFuture.scala
- Alphabetic
- By Inheritance
- CancelableFuture
- Serializable
- CancelableFutureForPlatform
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
- def apply[A](underlying: Future[A], cancelable: Cancelable): CancelableFuture[A]
Builder for a CancelableFuture.
Builder for a CancelableFuture.
- underlying
is an underlying
Future
reference that will respond toonComplete
calls- cancelable
is a Cancelable that can be used to cancel the active computation
- def async[A](register: ((Try[A]) => Unit) => Cancelable)(implicit ec: ExecutionContext): CancelableFuture[A]
Given a registration function that can execute an asynchronous process, executes it and builds a CancelableFuture value out of it.
Given a registration function that can execute an asynchronous process, executes it and builds a CancelableFuture value out of it.
The given
registration
function can return a Cancelable reference that can be used to cancel the executed async process. This reference can be empty.def delayedResult[A](f: => A)(implicit s: Scheduler): CancelableFuture[A] = CancelableFuture.async { complete => val task = s.scheduleOnce(10.seconds) { complete(Try(f)) } Cancelable { () => println("Cancelling!") task.cancel() } }
This is much like working with Scala's Promise, only safer.
- def failed[A](e: Throwable): CancelableFuture[A]
Promotes a strict
Throwable
to a CancelableFuture that's already complete with a failure.Promotes a strict
Throwable
to a CancelableFuture that's already complete with a failure.- e
is the error that's going to be signaled in the
onComplete
callback.
- def fromJavaCompletable[A](cfa: CompletableFuture[A])(implicit ec: ExecutionContext): CancelableFuture[A]
Convert
java.util.concurrent.CompletableFuture
to CancelableFutureConvert
java.util.concurrent.CompletableFuture
to CancelableFutureIf the source is cancelled, returned
Future
will never terminate- Definition Classes
- CancelableFutureForPlatform
- def fromTry[A](value: Try[A]): CancelableFuture[A]
Promotes a strict
Try[A]
to a CancelableFuture that's already complete.Promotes a strict
Try[A]
to a CancelableFuture that's already complete.- value
is the
Try[A]
value that's going to be signaled in theonComplete
callback.
- final def never[A]: CancelableFuture[A]
Returns a CancelableFuture instance that will never complete.
- def pure[A](value: A): CancelableFuture[A]
Promotes a strict
value
to a CancelableFuture that's already complete.Promotes a strict
value
to a CancelableFuture that's already complete.Alias for successful.
- value
is the value that's going to be signaled in the
onComplete
callback.
- def raiseError[A](e: Throwable): CancelableFuture[A]
Promotes a strict
Throwable
to a CancelableFuture that's already complete with a failure.Promotes a strict
Throwable
to a CancelableFuture that's already complete with a failure.Alias for failed.
- e
is the error that's going to be signaled in the
onComplete
callback.
- def successful[A](value: A): CancelableFuture[A]
Promotes a strict
value
to a CancelableFuture that's already complete.Promotes a strict
value
to a CancelableFuture that's already complete.- value
is the value that's going to be signaled in the
onComplete
callback.
- def toJavaCompletable[A](source: CancelableFuture[A])(implicit ec: ExecutionContext): CompletableFuture[A]
Convert CancelableFuture to
java.util.concurrent.CompletableFuture
.Convert CancelableFuture to
java.util.concurrent.CompletableFuture
.- Definition Classes
- CancelableFutureForPlatform
- val unit: CancelableFuture[Unit]
An already completed CancelableFuture.
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.