The function barrier-unblock
unblocks the barrier barrier, potentially disabling it, resetting its count or killing the waiting processes.
Without keyword arguments, barrier-unblock
unblocks the barrier, which means that any thread that is waiting on the barrier wakes and returns from barrier-wait, and the arriver count is reset to 0.
If disable is true, or if disable is not passed and the barrier was made with disable-on-unblock true, then barrier-unblock
also disables the barrier, so any further calls to barrier-wait return nil
immediately.
If reset-count is true, it must be valid count (a positive fixnum or t
), and barrier-unblock
sets the count of the barrier to this value.
If kill-waiting is true, instead of waking up the waiting threads, barrier-unblock
kills them (by process-terminate).
LispWorks User Guide and Reference Manual - 13 Feb 2015