Expand description
System Mutexes
The Windows implementation of mutexes is a little odd and it might not be immediately obvious what’s going on. The primary oddness is that SRWLock is used instead of CriticalSection, and this is done because:
-
SRWLock is several times faster than CriticalSection according to benchmarks performed on both Windows 8 and Windows 7.
-
CriticalSection allows recursive locking while SRWLock deadlocks. The Unix implementation deadlocks so consistency is preferred. See #19962 for more details.
-
While CriticalSection is fair and SRWLock is not, the current Rust policy is that there are no guarantees of fairness.
Structs
Functions
- raw⚠