summaryrefslogtreecommitdiff
path: root/Lib/asyncio/events.py
diff options
context:
space:
mode:
authorYury Selivanov <yury@magic.io>2017-12-11 10:07:44 -0500
committerGitHub <noreply@github.com>2017-12-11 10:07:44 -0500
commitabae67ebc2897ca37df067f322d19e19d1ef6d88 (patch)
tree065b5ae2fbb3a206f7b337d3a8ae8b83b566f3c1 /Lib/asyncio/events.py
parent3e9751819ad13a965e8be13c1e5bc5a6811fe6b8 (diff)
downloadcpython-git-abae67ebc2897ca37df067f322d19e19d1ef6d88.tar.gz
Add asyncio.get_running_loop() function. (#4782)
Diffstat (limited to 'Lib/asyncio/events.py')
-rw-r--r--Lib/asyncio/events.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/Lib/asyncio/events.py b/Lib/asyncio/events.py
index 7db1ded8e8..e425b06e42 100644
--- a/Lib/asyncio/events.py
+++ b/Lib/asyncio/events.py
@@ -7,7 +7,8 @@ __all__ = (
'get_event_loop_policy', 'set_event_loop_policy',
'get_event_loop', 'set_event_loop', 'new_event_loop',
'get_child_watcher', 'set_child_watcher',
- '_set_running_loop', '_get_running_loop',
+ '_set_running_loop', 'get_running_loop',
+ '_get_running_loop',
)
import functools
@@ -646,6 +647,17 @@ class _RunningLoop(threading.local):
_running_loop = _RunningLoop()
+def get_running_loop():
+ """Return the running event loop. Raise a RuntimeError if there is none.
+
+ This function is thread-specific.
+ """
+ loop = _get_running_loop()
+ if loop is None:
+ raise RuntimeError('no running event loop')
+ return loop
+
+
def _get_running_loop():
"""Return the running event loop or None.