tornado/docs/concurrent.rst

36 lines
1.3 KiB
ReStructuredText

``tornado.concurrent`` --- Work with ``Future`` objects
=======================================================
.. testsetup::
from tornado.concurrent import *
from tornado import gen
.. automodule:: tornado.concurrent
:members:
.. class:: Future
``tornado.concurrent.Future`` is an alias for `asyncio.Future`
on Python 3. On Python 2, it provides an equivalent
implementation.
In Tornado, the main way in which applications interact with
``Future`` objects is by ``awaiting`` or ``yielding`` them in
coroutines, instead of calling methods on the ``Future`` objects
themselves. For more information on the available methods, see
the `asyncio.Future` docs.
.. versionchanged:: 5.0
Tornado's implementation of ``Future`` has been replaced by
the version from `asyncio` when available.
- ``Future`` objects can only be created while there is a
current `.IOLoop`
- The timing of callbacks scheduled with
``Future.add_done_callback`` has changed.
- Cancellation is now partially supported (only on Python 3)
- The ``exc_info`` and ``set_exc_info`` methods are no longer
available on Python 3.