
Form to run when process terminates.
The process to watch for termination. By default, this is the value of mp:*current-process* .
Ensures that the cleanup-form is present for the given process. When the process terminates, its cleanup forms are run. Cleanup forms can be functions of one argument (the process), or lists, in which case the car is applied to the process and the cdr of the list.
When adding cleanup forms, this function uses equal to ensure that the form is only added once.
A process calls add-process-dependent each time a dependent object is added to a process. When the process terminates, inform-dependent-of-dead-process is called on all dependent objects.
(defun add-process-dependent (dependent)
(mp:ensure-process-cleanup
`(delete-process-dependent ,dependent)))
(defun delete-process-dependent (process dependent)
(inform-dependent-of-dead-process dependent process))