mirror of https://github.com/python/cpython
bpo-47062: Rename factory argument to loop_factory (GH-32113)
This commit is contained in:
parent
d03acd7270
commit
bad6ffaa64
|
@ -62,7 +62,7 @@ Running an asyncio Program
|
||||||
Runner context manager
|
Runner context manager
|
||||||
======================
|
======================
|
||||||
|
|
||||||
.. class:: Runner(*, debug=None, factory=None)
|
.. class:: Runner(*, debug=None, loop_factory=None)
|
||||||
|
|
||||||
A context manager that simplifies *multiple* async function calls in the same
|
A context manager that simplifies *multiple* async function calls in the same
|
||||||
context.
|
context.
|
||||||
|
@ -74,7 +74,7 @@ Runner context manager
|
||||||
debug mode explicitly. ``None`` is used to respect the global
|
debug mode explicitly. ``None`` is used to respect the global
|
||||||
:ref:`asyncio-debug-mode` settings.
|
:ref:`asyncio-debug-mode` settings.
|
||||||
|
|
||||||
*factory* could be used for overriding the loop creation.
|
*loop_factory* could be used for overriding the loop creation.
|
||||||
:func:`asyncio.new_event_loop` is used if ``None``.
|
:func:`asyncio.new_event_loop` is used if ``None``.
|
||||||
|
|
||||||
Basically, :func:`asyncio.run()` example can be rewritten with the runner usage::
|
Basically, :func:`asyncio.run()` example can be rewritten with the runner usage::
|
||||||
|
|
|
@ -21,7 +21,7 @@ class Runner:
|
||||||
and properly finalizes the loop at the context manager exit.
|
and properly finalizes the loop at the context manager exit.
|
||||||
|
|
||||||
If debug is True, the event loop will be run in debug mode.
|
If debug is True, the event loop will be run in debug mode.
|
||||||
If factory is passed, it is used for new event loop creation.
|
If loop_factory is passed, it is used for new event loop creation.
|
||||||
|
|
||||||
asyncio.run(main(), debug=True)
|
asyncio.run(main(), debug=True)
|
||||||
|
|
||||||
|
@ -41,10 +41,10 @@ class Runner:
|
||||||
|
|
||||||
# Note: the class is final, it is not intended for inheritance.
|
# Note: the class is final, it is not intended for inheritance.
|
||||||
|
|
||||||
def __init__(self, *, debug=None, factory=None):
|
def __init__(self, *, debug=None, loop_factory=None):
|
||||||
self._state = _State.CREATED
|
self._state = _State.CREATED
|
||||||
self._debug = debug
|
self._debug = debug
|
||||||
self._factory = factory
|
self._loop_factory = loop_factory
|
||||||
self._loop = None
|
self._loop = None
|
||||||
self._context = None
|
self._context = None
|
||||||
|
|
||||||
|
@ -96,10 +96,10 @@ class Runner:
|
||||||
raise RuntimeError("Runner is closed")
|
raise RuntimeError("Runner is closed")
|
||||||
if self._state is _State.INITIALIZED:
|
if self._state is _State.INITIALIZED:
|
||||||
return
|
return
|
||||||
if self._factory is None:
|
if self._loop_factory is None:
|
||||||
self._loop = events.new_event_loop()
|
self._loop = events.new_event_loop()
|
||||||
else:
|
else:
|
||||||
self._loop = self._factory()
|
self._loop = self._loop_factory()
|
||||||
if self._debug is not None:
|
if self._debug is not None:
|
||||||
self._loop.set_debug(self._debug)
|
self._loop.set_debug(self._debug)
|
||||||
self._context = contextvars.copy_context()
|
self._context = contextvars.copy_context()
|
||||||
|
|
|
@ -201,7 +201,7 @@ class RunnerTests(BaseTest):
|
||||||
|
|
||||||
def test_custom_factory(self):
|
def test_custom_factory(self):
|
||||||
loop = mock.Mock()
|
loop = mock.Mock()
|
||||||
with asyncio.Runner(factory=lambda: loop) as runner:
|
with asyncio.Runner(loop_factory=lambda: loop) as runner:
|
||||||
self.assertIs(runner.get_loop(), loop)
|
self.assertIs(runner.get_loop(), loop)
|
||||||
|
|
||||||
def test_run(self):
|
def test_run(self):
|
||||||
|
|
Loading…
Reference in New Issue