diff options
| author | Eli Zaretskii | 2025-09-20 12:32:21 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2025-09-20 12:32:21 +0300 |
| commit | 40adabe2ef8787daa375eaddfb1e265ef5fb18a3 (patch) | |
| tree | 25968c6d85d67e7ea2c25144b56a451ff8c970da /doc | |
| parent | 65fb5798960201d247063f38c460a69253a00264 (diff) | |
| download | emacs-40adabe2ef8787daa375eaddfb1e265ef5fb18a3.tar.gz emacs-40adabe2ef8787daa375eaddfb1e265ef5fb18a3.zip | |
Improve documentation of 'accept-process-output'
* doc/lispref/processes.texi (Accepting Output):
* src/process.c (Faccept_process_output): Document better the
meaning of the timeout of 'accept-process-output' a,d the fact
that it doesn't always return as soon as some output is available.
See https://lists.gnu.org/archive/html/emacs-devel/2025-08/msg00750.html
for more details.
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/lispref/processes.texi | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi index 3d3ec7a5a3c..59f6ddeb63b 100644 --- a/doc/lispref/processes.texi +++ b/doc/lispref/processes.texi | |||
| @@ -1989,7 +1989,8 @@ until output arrives from a process. | |||
| 1989 | 1989 | ||
| 1990 | @defun accept-process-output &optional process seconds millisec just-this-one | 1990 | @defun accept-process-output &optional process seconds millisec just-this-one |
| 1991 | This function allows Emacs to read pending output from processes. The | 1991 | This function allows Emacs to read pending output from processes. The |
| 1992 | output is given to their filter functions. If @var{process} is | 1992 | output is given to the filter functions set up by the processes |
| 1993 | (@pxref{Filter Functions}). If @var{process} is | ||
| 1993 | non-@code{nil} then this function does not return until some output | 1994 | non-@code{nil} then this function does not return until some output |
| 1994 | has been received from @var{process} or @var{process} has closed the | 1995 | has been received from @var{process} or @var{process} has closed the |
| 1995 | connection. | 1996 | connection. |
| @@ -2020,6 +2021,15 @@ got output from @var{process}, or from any process if @var{process} is | |||
| 2020 | corresponding connection contains buffered data. The function returns | 2021 | corresponding connection contains buffered data. The function returns |
| 2021 | @code{nil} if the timeout expired or the connection was closed before output | 2022 | @code{nil} if the timeout expired or the connection was closed before output |
| 2022 | arrived. | 2023 | arrived. |
| 2024 | |||
| 2025 | Note that this function is not guaranteed to return as soon as some | ||
| 2026 | output is available from a subprocess, because the main purpose of the | ||
| 2027 | function is to let Emacs read output from subprocesses, not to wait as | ||
| 2028 | little as possible. In particular, if @var{process} is @code{nil}, the | ||
| 2029 | function should not be expected to return before the specified timeout | ||
| 2030 | expires. Thus, if a Lisp program needs to minimize the wait for the | ||
| 2031 | subprocess output, it should call this function with a non-@code{nil} | ||
| 2032 | value of a specific @var{process}. | ||
| 2023 | @end defun | 2033 | @end defun |
| 2024 | 2034 | ||
| 2025 | If a connection from a process contains buffered data, | 2035 | If a connection from a process contains buffered data, |