A string describing the reason that the process is waiting.
A timeout, in seconds.
A function to test.
The arguments to apply to wait-function.
This function uses process-wait to suspend the current Lisp process until the predicate wait-function applied to wait-arguments returns true, or until timeout seconds have passed.
wait-function is called periodically by the scheduler, but in situations where you want more control over the timing you should consider using process-wait-local instead of
process-wait and then call process-poke in the process that is expected to make the wait-function return true.
LispWorks User Guide and Reference Manual - 13 Feb 2015