scala.concurrent

# Future

#### object Future

Future companion object.

Linear Supertypes
AnyRef, Any
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. Future
2. AnyRef
3. Any

1. Hide All
2. Show all

Learn more about member selection
Visibility

1. Public
2. All

### Value Members

1. #### final def !=(arg0: Any): Boolean

   Definition Classes
     AnyRef → Any

2. #### final def ##(): Int

   Definition Classes
     AnyRef → Any

3. #### final def ==(arg0: Any): Boolean

   Definition Classes
     AnyRef → Any

4. #### def apply[T](body: ⇒ T)(implicit 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.

   T

     the type of the result

   body

     the asychronous computation

   executor

     the execution context on which the future is run

   returns

     the `Future` holding the result of the computation

5. #### final def asInstanceOf[T0]: T0

   Definition Classes
     Any

6. #### def clone(): AnyRef

   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( ... )

7. #### final def eq(arg0: AnyRef): Boolean

   Definition Classes
     AnyRef

8. #### def equals(arg0: Any): Boolean

   Definition Classes
     AnyRef → Any

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

   Creates an already completed Future with the specified exception.

   Creates an already completed Future with the specified exception.

   T

     the type of the value in the future

   returns

     the newly created `Future` object

10. #### def finalize(): Unit

    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )

11. #### def find[T](futures: TraversableOnce[Future[T]])(p: (T) ⇒ Boolean)(implicit 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.

12. #### def firstCompletedOf[T](futures: TraversableOnce[Future[T]])(implicit executor: ExecutionContext): Future[T]

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

13. #### def fold[T, R](futures: TraversableOnce[Future[T]])(zero: R)(op: (R, T) ⇒ R)(implicit 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.

    Example:

        val result = Await.result(Future.fold(futures)(0)(_ + _), 5 seconds)

14. #### def fromTry[T](result: Try[T]): Future[T]

    Creates an already completed Future with the specified result or exception.

    Creates an already completed Future with the specified result or exception.

    T

      the type of the value in the promise

    returns

      the newly created `Future` object

15. #### final def getClass(): Class[_]

    Definition Classes
      AnyRef → Any

16. #### def hashCode(): Int

    Definition Classes
      AnyRef → Any

17. #### final def isInstanceOf[T0]: Boolean

    Definition Classes
      Any

18. #### final def ne(arg0: AnyRef): Boolean

    Definition Classes
      AnyRef

19. #### final def notify(): Unit

    Definition Classes
      AnyRef

20. #### final def notifyAll(): Unit

    Definition Classes
      AnyRef

21. #### def reduce[T, R >: T](futures: TraversableOnce[Future[T]])(op: (R, T) ⇒ R)(implicit executor: ExecutionContext): Future[R]

    Initiates a fold over the supplied futures where the fold-zero is the result value of the `Future` that's completed first.

    Initiates a fold over the supplied futures where the fold-zero is the result value of the `Future` that's completed first.

    Example:

        val result = Await.result(Future.reduce(futures)(_ + _), 5 seconds)

22. #### def sequence[A, M[X] <: TraversableOnce[X]](in: M[Future[A]])(implicit cbf: CanBuildFrom[M[Future[A]], A, M[A]], executor: ExecutionContext): Future[M[A]]

    Simple version of `Future.traverse`.

    Simple version of `Future.traverse`. Transforms a `TraversableOnce[Future[A]]` into a `Future[TraversableOnce[A]]`. Useful for reducing many `Future`s into a single `Future`.

23. #### def successful[T](result: T): Future[T]

    Creates an already completed Future with the specified result.

    Creates an already completed Future with the specified result.

    T

      the type of the value in the future

    returns

      the newly created `Future` object

24. #### final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
      AnyRef

25. #### def toString(): String

    Definition Classes
      AnyRef → Any

26. #### def traverse[A, B, M[X] <: TraversableOnce[X]](in: M[A])(fn: (A) ⇒ Future[B])(implicit cbf: CanBuildFrom[M[A], B, M[B]], executor: ExecutionContext): Future[M[B]]

    Transforms a `TraversableOnce[A]` into a `Future[TraversableOnce[B]]` using the provided function `A => Future[B]`.

    Transforms a `TraversableOnce[A]` into a `Future[TraversableOnce[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:

        val myFutureList = Future.traverse(myList)(x => Future(myFunc(x)))

27. #### final def wait(): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

28. #### final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

29. #### final def wait(arg0: Long): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Inherited from AnyRef

### Inherited from Any

### Ungrouped