From 754bbf7a25a8dda49b5d08ef0d0443bbf5af0e36 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 7 Apr 2024 13:41:34 -0500 Subject: new repository --- devdocs/elisp/processes-and-threads.html | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 devdocs/elisp/processes-and-threads.html (limited to 'devdocs/elisp/processes-and-threads.html') diff --git a/devdocs/elisp/processes-and-threads.html b/devdocs/elisp/processes-and-threads.html new file mode 100644 index 00000000..0d5e935a --- /dev/null +++ b/devdocs/elisp/processes-and-threads.html @@ -0,0 +1,10 @@ +

Processes and Threads

Because threads were a relatively late addition to Emacs Lisp, and due to the way dynamic binding was sometimes used in conjunction with accept-process-output, by default a process is locked to the thread that created it. When a process is locked to a thread, output from the process can only be accepted by that thread.

A Lisp program can specify to which thread a process is to be locked, or instruct Emacs to unlock a process, in which case its output can be processed by any thread. Only a single thread will wait for output from a given process at one time—once one thread begins waiting for output, the process is temporarily locked until accept-process-output or sit-for returns.

If the thread exits, all the processes locked to it are unlocked.

Function: process-thread process +

Return the thread to which process is locked. If process is unlocked, return nil.

+
Function: set-process-thread process thread +

Set the locking thread of process to thread. thread may be nil, in which case the process is unlocked.

+
+

+ Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
+ https://www.gnu.org/software/emacs/manual/html_node/elisp/Processes-and-Threads.html +

+
-- cgit v1.2.3