A variant of lock-and-condition-variable-wait with a simpler lambda list.
mp
simple-lock-and-condition-variable-wait lock lock-timeout condvar condvar-timeout predicate &rest args => result
lock⇩ |
A lock. |
lock-timeout⇩ |
A non-negative real or nil . |
condvar⇩ | |
condvar-timeout⇩ |
A non-negative real or nil . |
predicate⇩ |
A function designator. |
args⇩ |
Arguments topredicate. |
result |
See below. |
The function simple-lock-and-condition-variable-wait
is a variant of lock-and-condition-variable-wait that does not take keyword arguments. Also it takes the arguments of predicate as &rest args. It interprets and acts on lock, lock-timeout, condvar and condvar-timeout just like lock-and-condition-variable-wait.
simple-lock-and-condition-variable-wait
returns the result of calling predicate or the wait, like lock-and-condition-variable-wait when return-function is not supplied.
simple-lock-and-condition-variable-wait
does not take wait reason arguments, so you should give names to the lock lock and the condition-variable condvar for debugging (by passing name in make-lock and make-condition-variable).
condition-variable-wait
lock-and-condition-variable-wait
lock-and-condition-variable-signal
lock-and-condition-variable-broadcast
condition-variable-signal
condition-variable-broadcast
19.7.1 Condition variables
19.4 Locks
LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:51