14.5 Multiprocessing in a dynamic library

Multiprocessing is started automatically in a LispWorks dynamic library. Therefore you can arrange for Lisp initialization operations by adding process specifications to mp:*initial-processes* .

For example, if you have a function like this:

(defun my-server ()
  (let ((s (establish-a-socket)))
    (loop (accept-connection s))))

you need to do something like:

(pushnew '("My server" () my-server) mp:*initial-processes*
         :test 'equalp)

before saving or delivering your library.

LispWorks User Guide - 11 Mar 2008