type Lock_Id is range 0 .. 31;
function Locked (Id : Lock_Id) return Boolean
Return True if the given lock is claimed (Mainly intended for debugging)
procedure Release (Id : Lock_Id)
Release the given lock
function Try_Lock (Id : Lock_Id) return Boolean
Try to claim the given lock. Return True if the lock is successfully claimed.
procedure Wait_Lock (Id : Lock_Id)
Repeatedly try to claim the lock until successful