A LOCK statement has the form:
LOCK mu DO S END
where S is a statement and mu is an expression. It is equivalent to:
WITH m = mu DO
Thread.Acquire(m);
TRY S FINALLY Thread.Release(m) END
END
where m stands for a variable that does not occur in S.
Last modified on Wed Apr 3 09:39:03 PST 1996 by heydon
modified on Mon Apr 18 14:04:17 PDT 1994 by kalsow