From 2f644c0dc951868181e380f3d1cb4854e3a3152e Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Mon, 30 Sep 2019 18:46:43 -0700 Subject: [PATCH] Fix and improve `asyncio.run()` docs (GH-16403) (GH-16504) (cherry picked from commit e407013089259e4c0b271703e1975bbcd578a2d5) Co-authored-by: Kyle Stanley --- Doc/glossary.rst | 2 +- Doc/library/asyncio-task.rst | 6 ++---- Lib/asyncio/runners.py | 6 +----- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/Doc/glossary.rst b/Doc/glossary.rst index e601e8b3698..9ce0357f1cb 100644 --- a/Doc/glossary.rst +++ b/Doc/glossary.rst @@ -247,7 +247,7 @@ Glossary Fortran contiguous arrays, the first index varies the fastest. coroutine - Coroutines is a more generalized form of subroutines. Subroutines are + Coroutines are a more generalized form of subroutines. Subroutines are entered at one point and exited at another point. Coroutines can be entered, exited, and resumed at many different points. They can be implemented with the :keyword:`async def` statement. See also diff --git a/Doc/library/asyncio-task.rst b/Doc/library/asyncio-task.rst index 321b4f45765..68292337939 100644 --- a/Doc/library/asyncio-task.rst +++ b/Doc/library/asyncio-task.rst @@ -212,6 +212,8 @@ Running an asyncio Program .. function:: run(coro, \*, debug=False) + Execute the :term:`coroutine` *coro* and return the result. + This function runs the passed coroutine, taking care of managing the asyncio event loop and *finalizing asynchronous generators*. @@ -225,10 +227,6 @@ Running an asyncio Program the end. It should be used as a main entry point for asyncio programs, and should ideally only be called once. - Return a result of *coro* execution, or raise a :exc:`RuntimeError` - if ``asyncio.run()`` is called from a running event loop, or a - :exc:`ValueError` if *coro* is not a courutine. - Example:: async def main(): diff --git a/Lib/asyncio/runners.py b/Lib/asyncio/runners.py index df686386b8f..2e37e18b45f 100644 --- a/Lib/asyncio/runners.py +++ b/Lib/asyncio/runners.py @@ -6,7 +6,7 @@ from . import tasks def run(main, *, debug=False): - """Run a coroutine. + """Execute the coroutine and return the result. This function runs the passed coroutine, taking care of managing the asyncio event loop and finalizing asynchronous @@ -21,10 +21,6 @@ def run(main, *, debug=False): It should be used as a main entry point for asyncio programs, and should ideally only be called once. - Return a result of *coro* execution, or raise a RuntimeError - if `asyncio.run()`is called from a running event loop, or a ValueError - if `main` is not a courutine. - Example: async def main():