Skip to content

Commit c0e5816

Browse files
[3.12] [doc] Make subprocess.wait documentation more precise (GH-98700) (GH-112153)
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 81ab0e8) Co-authored-by: Luis Pedro Coelho <luis@luispedro.org>
1 parent 78ccb41 commit c0e5816

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

Doc/library/subprocess.rst

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -791,9 +791,10 @@ Instances of the :class:`Popen` class have the following methods:
791791

792792
.. note::
793793

794-
The function is implemented using a busy loop (non-blocking call and
795-
short sleeps). Use the :mod:`asyncio` module for an asynchronous wait:
796-
see :class:`asyncio.create_subprocess_exec`.
794+
When the ``timeout`` parameter is not ``None``, then (on POSIX) the
795+
function is implemented using a busy loop (non-blocking call and short
796+
sleeps). Use the :mod:`asyncio` module for an asynchronous wait: see
797+
:class:`asyncio.create_subprocess_exec`.
797798

798799
.. versionchanged:: 3.3
799800
*timeout* was added.

0 commit comments

Comments
 (0)