Object

com.twitter.util

Await

Related Doc: package util

Permalink

object Await

Synchronously await the result of some action by blocking the current thread.

The two main uses of Await are (a) you have synchronous code that needs to wait on some action performed by asynchronous code, or (b) you have synchronous code that needs to wait on some action performed on a thread pool or otherwise a different thread.

A common type of Awaitable is the com.twitter.util.Future.

In the context of an event loop (such as when you are on a Finagle thread), never synchronously wait for completion - favoring asynchronous methods such as combinators or callbacks registered on a Future.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Await
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def all(awaitables: Collection[Awaitable[_]], timeout: Duration): Unit

    Permalink

    Returns after all actions have completed.

    Returns after all actions have completed. The timeout given is passed to each awaitable in turn, meaning max await time will be awaitables.size * timeout.

    Annotations
    @throws( classOf[TimeoutException] ) @throws( classOf[InterruptedException] )
    See also

    Await.all(Seq, Duration)

  5. def all(awaitables: Seq[Awaitable[_]], timeout: Duration): Unit

    Permalink

    Returns after all actions have completed.

    Returns after all actions have completed. The timeout given is passed to each awaitable in turn, meaning max await time will be awaitables.size * timeout.

    If any of the Awaitables are not ready within timeout, a com.twitter.util.TimeoutException will be thrown.

    Annotations
    @throws( classOf[TimeoutException] ) @throws( classOf[InterruptedException] )
  6. def all(awaitables: Awaitable[_]*): Unit

    Permalink

    Returns after all actions have completed.

    Returns after all actions have completed. The timeout given is passed to each awaitable in turn, meaning max await time will be awaitables.size * timeout.

    Annotations
    @throws( classOf[TimeoutException] ) @throws( classOf[InterruptedException] ) @varargs()
  7. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  13. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  15. def isReady(awaitable: Awaitable[_]): Boolean

    Permalink

    Is this Awaitable ready? In other words: would calling Awaitable.ready block?

  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def ready[T <: Awaitable[_]](awaitable: T, timeout: Duration): T

    Permalink

    Returns the awaitable object itself when the action has completed.

    Returns the awaitable object itself when the action has completed. Completion of this method merely indicates action completion, regardless of whether it was successful or not. In order to determine whether the action was successful, the awaitable must be queried separately. Prefer using result() when you wish failures to be thrown as exceptions.

    If the Awaitable is not ready within timeout, a com.twitter.util.TimeoutException will be thrown.

    Annotations
    @throws( classOf[TimeoutException] ) @throws( classOf[InterruptedException] )
  20. def ready[T <: Awaitable[_]](awaitable: T): T

    Permalink

    Returns the awaitable object itself when the action has completed.

    Returns the awaitable object itself when the action has completed. Completion of this method merely indicates action completion, regardless of whether it was successful or not. In order to determine whether the action was successful, the awaitable must be queried separately. Prefer using result() when you wish failures to be thrown as exceptions.

    Annotations
    @throws( classOf[TimeoutException] ) @throws( classOf[InterruptedException] )
  21. def result[T](awaitable: Awaitable[T], timeout: Duration): T

    Permalink

    Waits until the action has completed.

    Waits until the action has completed. If the action was successful, returns the result of the action. If the action failed, the corresponding exception representing the failure is thrown.

    If you want the results as a com.twitter.util.Try, use Await.result(future.liftToTry).

    If the Awaitable is not ready within timeout, a com.twitter.util.TimeoutException will be thrown.

    Annotations
    @throws( classOf[Exception] )
  22. def result[T](awaitable: Awaitable[T]): T

    Permalink

    Waits until the action has completed.

    Waits until the action has completed. If the action was successful, returns the result of the action. If the action failed, the corresponding exception representing the failure is thrown.

    If you want the results as a com.twitter.util.Try, use Await.result(future.liftToTry).

    Annotations
    @throws( classOf[Exception] )
  23. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  24. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped