Packages

object Futures

Futures is the Java API for Futures and Promises

Source
Future.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Futures
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def failed[T](exception: Throwable): Future[T]

    creates an already completed Promise with the specified exception

  2. def failedCompletionStage[T](ex: Throwable): CompletionStage[T]

    Creates an already completed CompletionStage with the specified exception

  3. def find[T <: AnyRef](futures: Iterable[Future[T]], predicate: Function[T, Boolean], executor: ExecutionContext): Future[Option[T]]

    Returns a Future that will hold the optional result of the first Future with a result that matches the predicate

  4. def firstCompletedOf[T <: AnyRef](futures: Iterable[Future[T]], executor: ExecutionContext): Future[T]

    Returns a Future to the result of the first future in the list that is completed

  5. def fold[T <: AnyRef, R <: AnyRef](zero: R, futures: Iterable[Future[T]], fun: Function2[R, T, R], executor: ExecutionContext): Future[R]

    A non-blocking fold over the specified futures, with the start value of the given zero.

    A non-blocking fold over the specified futures, with the start value of the given zero. The fold is performed on the thread where the last future is completed, the result will be the first failure of any of the futures, or any failure in the actual fold, or the result of the fold.

  6. def future[T](body: Callable[T], executor: ExecutionContext): Future[T]

    Starts an asynchronous computation and returns a Future object with the result of that computation.

    Starts an asynchronous computation and returns a Future object with the result of that computation.

    The result becomes available once the asynchronous computation is completed.

    body

    the asynchronous computation

    executor

    the execution context on which the future is run

    returns

    the Future holding the result of the computation

  7. def promise[T](): Promise[T]

    Creates a promise object which can be completed with a value.

    Creates a promise object which can be completed with a value.

    returns

    the newly created Promise object

  8. def reduce[T <: AnyRef, R >: T](futures: Iterable[Future[T]], fun: Function2[R, T, R], executor: ExecutionContext): Future[R]

    Reduces the results of the supplied futures and binary function.

  9. def sequence[A](in: Iterable[Future[A]], executor: ExecutionContext): Future[Iterable[A]]

    Simple version of #traverse.

    Simple version of #traverse. Transforms a JIterable[Future[A]] into a Future[JIterable[A]]. Useful for reducing many Futures into a single Future.

  10. def successful[T](result: T): Future[T]

    Creates an already completed Promise with the specified result

  11. def traverse[A, B](in: Iterable[A], fn: Function[A, Future[B]], executor: ExecutionContext): Future[Iterable[B]]

    Transforms a JIterable[A] into a Future[JIterable[B]] using the provided Function A => Future[B].

    Transforms a JIterable[A] into a Future[JIterable[B]] using the provided Function A => Future[B]. This is useful for performing a parallel map. For example, to apply a function to all items of a list in parallel.