Skip to content

Commit

Permalink
pythongh-102810 Improve the sphinx docs for asyncio.Timeout (python…
Browse files Browse the repository at this point in the history
…GH-102934)

(cherry picked from commit f13fdac)

Co-authored-by: JosephSBoyle <[email protected]>
Co-authored-by: Alex Waygood <[email protected]>
  • Loading branch information
3 people authored Mar 23, 2023
1 parent 6ffeeb2 commit 84ae50c
Showing 1 changed file with 9 additions and 15 deletions.
24 changes: 9 additions & 15 deletions Doc/library/asyncio-task.rst
Original file line number Diff line number Diff line change
Expand Up @@ -624,32 +624,26 @@ Timeouts
The context manager produced by :func:`asyncio.timeout` can be
rescheduled to a different deadline and inspected.

.. class:: Timeout()
.. class:: Timeout(when)

An :ref:`asynchronous context manager <async-context-managers>`
that limits time spent inside of it.
for cancelling overdue coroutines.

.. versionadded:: 3.11
``when`` should be an absolute time at which the context should time out,
as measured by the event loop's clock:

- If ``when`` is ``None``, the timeout will never trigger.
- If ``when < loop.time()``, the timeout will trigger on the next
iteration of the event loop.

.. method:: when() -> float | None

Return the current deadline, or ``None`` if the current
deadline is not set.

The deadline is a float, consistent with the time returned by
:meth:`loop.time`.

.. method:: reschedule(when: float | None)

Change the time the timeout will trigger.

If *when* is ``None``, any current deadline will be removed, and the
context manager will wait indefinitely.

If *when* is a float, it is set as the new deadline.

if *when* is in the past, the timeout will trigger on the next
iteration of the event loop.
Reschedule the timeout.

.. method:: expired() -> bool

Expand Down

0 comments on commit 84ae50c

Please sign in to comment.