The function
lock-owned-by-current-process-p
checks if the lock
lock
is locked by the current thread. If this returns
nil
, then the lock is either unlocked or locked by another process.
If the lock is a "sharing" lock, this also checks if the current process has an exclusive lock on it. It ignores any shared lock.
LispWorks User Guide and Reference Manual - 21 Dec 2011