“Mutual Exclusion” Used to protect shared data from being simultaneously accessed by multiple threads, by providing mutually exclusive access. It is used to prevent Data Races by “locking” access of shared data