summaryrefslogtreecommitdiffstats
path: root/Lib/asyncio/timeouts.py
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2023-03-19 20:31:22 (GMT)
committerGitHub <noreply@github.com>2023-03-19 20:31:22 (GMT)
commit98833563e25c2b9bafce9f9dd1579f169f921ed7 (patch)
tree29c5aac06eb3aece9e2b7794a94c96fb57fbf242 /Lib/asyncio/timeouts.py
parent045c8a1779036172f20d60bf206649c8823bb34b (diff)
downloadcpython-98833563e25c2b9bafce9f9dd1579f169f921ed7.zip
cpython-98833563e25c2b9bafce9f9dd1579f169f921ed7.tar.gz
cpython-98833563e25c2b9bafce9f9dd1579f169f921ed7.tar.bz2
gh-102810: Add docstrings to the public-facing methods of `asyncio.Timeout` (GH-102811)
(cherry picked from commit 699cb20ae6fdef8b0f13d633cf4858465ef3469f) Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com> Co-authored-by: Guido van Rossum <gvanrossum@gmail.com> Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Diffstat (limited to 'Lib/asyncio/timeouts.py')
-rw-r--r--Lib/asyncio/timeouts.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/Lib/asyncio/timeouts.py b/Lib/asyncio/timeouts.py
index 94d2553..d07b291 100644
--- a/Lib/asyncio/timeouts.py
+++ b/Lib/asyncio/timeouts.py
@@ -25,8 +25,18 @@ class _State(enum.Enum):
@final
class Timeout:
+ """Asynchronous context manager for cancelling overdue coroutines.
+
+ Use `timeout()` or `timeout_at()` rather than instantiating this class directly.
+ """
def __init__(self, when: Optional[float]) -> None:
+ """Schedule a timeout that will trigger at a given loop time.
+
+ - 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.
+ """
self._state = _State.CREATED
self._timeout_handler: Optional[events.TimerHandle] = None
@@ -34,9 +44,11 @@ class Timeout:
self._when = when
def when(self) -> Optional[float]:
+ """Return the current deadline."""
return self._when
def reschedule(self, when: Optional[float]) -> None:
+ """Reschedule the timeout."""
assert self._state is not _State.CREATED
if self._state is not _State.ENTERED:
raise RuntimeError(