The function
process-join
waits until the process
process
dies, or
timeout
seconds passed.
If the process dies then
process-join
returns
t
. If the timeout passed it returns
nil
.
process-join
can be used on dead processes, and in this case returns
t
immediately.
The effect of
process-join
is similar to
(mp:process-wait-with-timeout
"Waiting for process to die" timeout
#'(lambda (x)
(not (mp:process-alive-p x))) process )
but the call above may not return until the next time the scheduler runs, possibly causing a delay. In contrast
process-join
returns immediately when the process dies.