Trait

scala.concurrent

Awaitable

Related Doc: package concurrent

Permalink

trait Awaitable[+T] extends AnyRef

An object that may eventually be completed with a result value of type T which may be awaited using blocking methods.

The Await object provides methods that allow accessing the result of an Awaitable by blocking the current thread until the Awaitable has been completed or a timeout has occurred.

Source
Awaitable.scala
Linear Supertypes
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Awaitable
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def ready(atMost: Duration)(implicit permit: CanAwait): Awaitable.this.type

    Permalink

    Await the "completed" state of this Awaitable.

    Await the "completed" state of this Awaitable.

    This method should not be called directly; use Await.ready instead.

    atMost

    maximum wait time, which may be negative (no waiting is done), Duration.Inf for unbounded waiting, or a finite positive duration

    returns

    this Awaitable

    Annotations
    @throws( clazz = classOf[TimeoutException] ) @throws( clazz = classOf[InterruptedException] )
    Exceptions thrown

    IllegalArgumentException if atMost is Duration.Undefined

    InterruptedException if the current thread is interrupted while waiting

    TimeoutException if after waiting for the specified time this Awaitable is still not ready

  2. abstract def result(atMost: Duration)(implicit permit: CanAwait): T

    Permalink

    Await and return the result (of type T) of this Awaitable.

    Await and return the result (of type T) of this Awaitable.

    This method should not be called directly; use Await.result instead.

    atMost

    maximum wait time, which may be negative (no waiting is done), Duration.Inf for unbounded waiting, or a finite positive duration

    returns

    the result value if the Awaitable is completed within the specific maximum wait time

    Annotations
    @throws( clazz = classOf[Exception] )
    Exceptions thrown

    IllegalArgumentException if atMost is Duration.Undefined

    InterruptedException if the current thread is interrupted while waiting

    TimeoutException if after waiting for the specified time this Awaitable is still not ready