Waits until a specified process dies, or a timeout is reached.
mp
process-join process &key timeout => flag
| process⇩ |
A process. |
| timeout⇩ |
A non-negative real or nil. |
| flag |
A boolean. |
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.
LispWorks® User Guide and Reference Manual - 18 Feb 2025 15:32:36