Server : nginx/1.24.0 System : Linux ip-172-31-33-48 6.14.0-1011-aws #11~24.04.1-Ubuntu SMP Fri Aug 1 02:07:25 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE Directory : /snap/core22/current/lib/python3.10/asyncio/ |
Upload File : |
"""Event loop mixins.""" import threading from . import events _global_lock = threading.Lock() # Used as a sentinel for loop parameter _marker = object() class _LoopBoundMixin: _loop = None def __init__(self, *, loop=_marker): if loop is not _marker: raise TypeError( f'As of 3.10, the *loop* parameter was removed from ' f'{type(self).__name__}() since it is no longer necessary' ) def _get_loop(self): loop = events._get_running_loop() if self._loop is None: with _global_lock: if self._loop is None: self._loop = loop if loop is not self._loop: raise RuntimeError(f'{self!r} is bound to a different event loop') return loop