From: Alexander Nordin Date: Tue, 25 Nov 2025 11:52:54 +0000 (-0800) Subject: [3.13] gh-138199: Address potential confusion re: threading (GH-138200) (GH-141929) X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1d16256f7d29ef5e6a393e7193765e5740264a17;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-138199: Address potential confusion re: threading (GH-138200) (GH-141929) gh-138199: Address potential confusion regarding threading in the `asyncio` HOWTO (GH-138200) (cherry picked from commit a4f422521337d3310b71bb081c195e64c2035bbb) --- diff --git a/Doc/howto/a-conceptual-overview-of-asyncio.rst b/Doc/howto/a-conceptual-overview-of-asyncio.rst index af1e39480cc1..926e781dbdc6 100644 --- a/Doc/howto/a-conceptual-overview-of-asyncio.rst +++ b/Doc/howto/a-conceptual-overview-of-asyncio.rst @@ -175,9 +175,12 @@ The recommended way to create tasks is via :func:`asyncio.create_task`. Creating a task automatically schedules it for execution (by adding a callback to run it in the event loop's to-do list, that is, collection of jobs). -Since there's only one event loop (in each thread), :mod:`!asyncio` takes care of -associating the task with the event loop for you. As such, there's no need -to specify the event loop. +:mod:`!asyncio` automatically associates tasks with the event loop for you. +This automatic association was purposely designed into :mod:`!asyncio` for +the sake of simplicity. +Without it, you'd have to keep track of the event loop object and pass it to +any coroutine function that wants to create tasks, adding redundant clutter +to your code. ::