A Future
represents the result of an asynchronous operation
.
When created, it probably doesn't have any result data.
When the operation finishes, the Future
gets the result.
An application can call a Future
object's get_result()
method; if the result has arrived, the
method returns it; otherwise, it waits for the result to arrive and then
returns it.
Note: There is no 1:1 mapping between RPCs and Futures. Multiple futures might be tied to a result from a single RPC.
Instance Methods
- check_success ()
- Check to see if the operation succeeded. Waits if necessary.
Raises an exception if there was a problem; returns
Noneif there was no problem. - done ()
- Returns
Trueif the result (or exception) has arrived; otherwise, returnsFalse. This function does not wait. - get_exception ()
- Waits if necessary; then returns the exception (or
Noneif there was no exception). Returns the exception, doesn't raise it. - get_result ()
- Waits if necessary; then returns the result or raises the exception.
- get_traceback ()
- Waits if necessary; then returns the exception's traceback
object (or
Noneif there was no traceback object). Python'stracebackmodule has functions to print and work with traceback objects. - wait ()
- Waits until a result or exception arrives.
Always returns
None.
Class Methods
- wait_all ( futures )
- Wait until all
Futuresin the passed iterable are done.Arguments
- futures
- Iterable of
Futureobjects.
Returns
None. - wait_any ( futures )
- Wait until at least one of a iterable of
Futuresis done.Arguments
- futures
- Iterable of
Futureobjects.
Returns one
Futurethat is done. (ReturnsNoneif thefuturesiterable is empty.)

