All Manuals > LispWorks® User Guide and Reference Manual

19 Multiprocessing

LispWorks supports threads for running computations in parallel. The programming environment, for example, makes extensive use of this mechanism to create separate threads for the various tools.

LispWorks multiprocessing uses native threads and supports Symmetric Multiprocessing (SMP). The implementation is referred to as "SMP LispWorks" where relevant.

Prior to LispWorks 8.0, some platforms uses a single native thread and implement user level threads. The implementation is referred to as "non-SMP LispWorks" where relevant.

In SMP LispWorks, Lisp processes (as reported by the Lisp function ps) are Operating System threads. These do not necessarily correspond to what system tools show you, for example in Microsoft Windows the Activity monitor shows OS processes, including exactly one for each running LispWorks image.

19.1 Introduction to processes

19.2 Processes basics

19.3 Atomicity and thread-safety of the LispWorks implementation

19.4 Locks

19.5 Modifying a hash table with multiprocessing

19.6 Process Waiting and communication between processes

19.7 Synchronization between threads

19.8 Killing a process, interrupts and blocking interrupts

19.9 Timers

19.10 Process properties

19.11 Other processes functions

19.12 Native threads and foreign code

19.13 Low level operations

19.14 Some mistakes to avoid with multithreading


LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:21