From b768ebea692646d6b906ac3f9679fd17ea887bc4 Mon Sep 17 00:00:00 2001 From: Luis Pedro Coelho Date: Thu, 16 Nov 2023 23:04:46 +1000 Subject: [PATCH] [doc] Make subprocess.wait documentation more precise (GH-98700) [doc] Make subprocess.wait doc more precise An active loop is only used when the `timeout` parameter is used on POSIX. When no timeout is used, the code calls `os.waitpid` internally (which puts the process on a sleep status). On Windows, the internal Windows API call accepts a timeout parameter, so that is delegated to the OS. (cherry picked from commit 81ab0e8a4add53035c87b040afda6d554cace528) Co-authored-by: Luis Pedro Coelho --- Doc/library/subprocess.rst | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst index 7f22a5d1852a89..d6b892a7ed957d 100644 --- a/Doc/library/subprocess.rst +++ b/Doc/library/subprocess.rst @@ -791,9 +791,10 @@ Instances of the :class:`Popen` class have the following methods: .. note:: - The function is implemented using a busy loop (non-blocking call and - short sleeps). Use the :mod:`asyncio` module for an asynchronous wait: - see :class:`asyncio.create_subprocess_exec`. + When the ``timeout`` parameter is not ``None``, then (on POSIX) the + function is implemented using a busy loop (non-blocking call and short + sleeps). Use the :mod:`asyncio` module for an asynchronous wait: see + :class:`asyncio.create_subprocess_exec`. .. versionchanged:: 3.3 *timeout* was added.