From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Tue, 1 Oct 2019 01:46:43 +0000 (-0700) Subject: Fix and improve `asyncio.run()` docs (GH-16403) (GH-16504) X-Git-Tag: v3.8.0rc1~6 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2f644c0dc951868181e380f3d1cb4854e3a3152e;p=python Fix and improve `asyncio.run()` docs (GH-16403) (GH-16504) (cherry picked from commit e407013089259e4c0b271703e1975bbcd578a2d5) Co-authored-by: Kyle Stanley --- diff --git a/Doc/glossary.rst b/Doc/glossary.rst index e601e8b369..9ce0357f1c 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 321b4f4576..6829233793 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 df686386b8..2e37e18b45 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():