A lock is an object protecting a critical region of code, enforcing a particular mutual-exclusion policy. The concurrency.locks vocabulary implements two types of locks:
Mutual-exclusion locks
Read-write locks