Parallel¶
Start thread in SBCL¶
Run a function in a thread
(sb-thread:make-thread #'(lambda () (a-function)) :name "a good name")
List all running threads
(sb-thread:list-all-threads)
Check if a thread is running
sb-thread:thread-alive-p
Kill a thread
sb-thread:terminate-thread
Start thread in CLISP¶
Run a function in a thread
(MT:MAKE-THREAD #'a-function :name "a good name")
List all running threads
(mt:list-threads)
Check if a thread is running
(mt:thread-active-p "thread name")
Bordeaux Threads¶
Portable thread library
http://trac.common-lisp.net/bordeaux-threads/wiki/ApiDocumentation
(ql:quickload "bordeaux-threads")
(bordeaux-threads:make-thread (lambda () (print "MUH")) :name "balle")
Clustering¶
lfarm is a Common Lisp library for distributing work across machines using the lparallel API.