
A lock object (see make-lock).
The status of the current Lisp process, before process-lock returns, that is, the status while the current process is waiting to timeout. This can be seen in the Process Browser.
A timeout interval, in seconds. If this is not given, process-lock waits until the lock can be set by the current Lisp process. A process can set a lock more than once.
process-lock attempts to set a lock and returns t if successful, or nil if timed out. If the lock is set and the owner of the lock is the value of *current-process* , then the lock's count is incremented by 1, and the lock is set to t . The Lisp process sleeps until the lock is claimed or the timeout period expires.