]> granicus.if.org Git - python/commitdiff
bpo-38260: Add Docs on asyncio.run (GH-16337)
authorEmmanuel Arias <emmanuelarias30@gmail.com>
Wed, 25 Sep 2019 08:53:49 +0000 (05:53 -0300)
committerMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Wed, 25 Sep 2019 08:53:49 +0000 (01:53 -0700)
Add docs about return and raise exception on asyncio.run

https://bugs.python.org/issue38260

Automerge-Triggered-By: @asvetlov
Doc/library/asyncio-task.rst
Lib/asyncio/runners.py

index 1fb882935895187162ee3dfc92abcbdaad16902d..9f55a3534a5e0c8842261730c7a499b387260419 100644 (file)
@@ -225,6 +225,18 @@ 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():
+            await asyncio.sleep(1)
+            print('hello')
+
+        asyncio.run(main())
+
     .. versionadded:: 3.7
 
     .. versionchanged:: 3.9
index 6c87747e770bb82d7b5d8410d0bda3721a894a14..904102bf82bef4f517b139fdd9ccb9902dc70d19 100644 (file)
@@ -21,6 +21,10 @@ 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():