<html lang="en"> <head> <title>Threading - SBCL 1.0.31 User Manual</title> <meta http-equiv="Content-Type" content="text/html"> <meta name="description" content="SBCL 1.0.31 User Manual"> <meta name="generator" content="makeinfo 4.13"> <link title="Top" rel="start" href="index.html#Top"> <link rel="prev" href="Package-Locks.html#Package-Locks" title="Package Locks"> <link rel="next" href="Timers.html#Timers" title="Timers"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- This manual is part of the SBCL software system. See the `README' file for more information. This manual is largely derived from the manual for the CMUCL system, which was produced at Carnegie Mellon University and later released into the public domain. This manual is in the public domain and is provided with absolutely no warranty. See the `COPYING' and `CREDITS' files for more information. --> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"><!-- pre.display { font-family:inherit } pre.format { font-family:inherit } pre.smalldisplay { font-family:inherit; font-size:smaller } pre.smallformat { font-family:inherit; font-size:smaller } pre.smallexample { font-size:smaller } pre.smalllisp { font-size:smaller } span.sc { font-variant:small-caps } span.roman { font-family:serif; font-weight:normal; } span.sansserif { font-family:sans-serif; font-weight:normal; } --></style> </head> <body> <div class="node"> <a name="Threading"></a> <p> Next: <a rel="next" accesskey="n" href="Timers.html#Timers">Timers</a>, Previous: <a rel="previous" accesskey="p" href="Package-Locks.html#Package-Locks">Package Locks</a>, Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a> <hr> </div> <!-- node-name, next, previous, up --> <h2 class="chapter">12 Threading</h2> <p>SBCL supports a fairly low-level threading interface that maps onto the host operating system's concept of threads or lightweight processes. This means that threads may take advantage of hardware multiprocessing on machines that have more than one CPU, but it does not allow Lisp control of the scheduler. This is found in the SB-THREAD package. <p>This requires Linux (2.6+ or systems with NPTL backports) running on the x86 or x86-64 architecture, or SunOS (Solaris) on the x86. Support for threading on Darwin (Mac OS X) and FreeBSD on the x86 is experimental. <ul class="menu"> <li><a accesskey="1" href="Threading-basics.html#Threading-basics">Threading basics</a> <li><a accesskey="2" href="Special-Variables.html#Special-Variables">Special Variables</a> <li><a accesskey="3" href="Mutex-Support.html#Mutex-Support">Mutex Support</a> <li><a accesskey="4" href="Semaphores.html#Semaphores">Semaphores</a> <li><a accesskey="5" href="Waitqueue_002fcondition-variables.html#Waitqueue_002fcondition-variables">Waitqueue/condition variables</a> <li><a accesskey="6" href="Sessions_002fDebugging.html#Sessions_002fDebugging">Sessions/Debugging</a> <li><a accesskey="7" href="Foreign-threads.html#Foreign-threads">Foreign threads</a> <li><a accesskey="8" href="Implementation-_0028Linux-x86_002fx86_002d64_0029.html#Implementation-_0028Linux-x86_002fx86_002d64_0029">Implementation (Linux x86/x86-64)</a> </ul> </body></html>