Generic Function | Package: mp | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version

## process-kill

Arguments: process &key wait

This function initiates killing the argument process (i.e. a thread). Killing a process involves unwinding it. If all goes well, process will removed from consideration for running and also be removed from the `*all-processes*` list, but those things typically happen after process-kill has returned, assuming wait is `nil`. That is, those actions are initiated by the call to process-kill but are completed separately (in part, by process itself). process-kill can be viewed as a request to the system to kill a process.

If the wait keyword argument is non-`nil`, the this function (and the thread that called it) wait until the killed process is really gone. process-kill signals an error if the process to be killed is an active immigrant. An inactive immigrant is one that was created to handle a lisp call from a foreign thread, and has returned from the topmost lisp call back into the foreign regime. The thread may still be processing, but it has no lisp state. This will kill the lisp process associated with that foreign thread, but will not kill the foreign thread itself. If it later calls into lisp, a new immigrant process will be created for it.

If wait is true and for some reason process is not killed, this function will not return.

See multiprocessing.htm for general information on multiprocessing in Allegro CL.

Copyright (c) 1998-2019, Franz Inc. Oakland, CA., USA. All rights reserved.
This page was not revised from the 8.2 page.
Created 2012.5.30.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version