.
executing the code in square brackets, no other may do the same. They can also be used to enforce mutual exclusion. There situations where you may want more than 2 threads to get access to a resource. Syncrhonisation problems There are a number of famous problems that charecterise the general issue