32.6.4.2.1 General [thread.mutex.requirements.mutex.general]| timsong-cpp.github.io
Another way things can go wrong.| The Old New Thing
Where each notification depends on some state information.| The Old New Thing