The macro
atomic-push
is the same as
cl:push
, but is guaranteed atomic for a suitable place.
place must be one of the places described in Low level atomic operations, or expand to one of them.
In many cases the natural inverse of
push
is
delete
, but there is no way to do
delete
atomically, except by using a separate lock, which must also be held while doing the
push
.
LispWorks User Guide and Reference Manual - 21 Dec 2011