Mutex
If mutexes used correctly, should be indistinguishable from Sequential Consistency
All global data should be protected by a mutex!
- Accessed by more than one thread
- At least one write
- Don’t need to lock during initialization
Mutexes busy wait
Constantly trying to acquire mutex
- inefficient