Я уверен, что мьютекса недостаточно, чтобы существовала концепция условных переменных; но он бьет меня, и я не могу убедить себя в конкретном сценарии, когда важна переменная состояния.
Различия между условными переменными, мьютексами и блокировками принятый ответ говорит, что переменная условия - это
блокировка с помощью механизма сигнализации. Он используется, когда потоки должны подождите, пока ресурс станет доступным. Поток может "ждать" на CV и тогда производитель ресурсов может "сигнализировать" переменную, в которой если пользователи, которые ждут резюме, получат уведомление и могут продолжить выполнение
Если я запутался в том, что поток может также ждать мьютекса, и когда он получает сигнал, просто означает, что теперь доступна переменная, зачем мне нужна переменная условия?
P.S.: Кроме того, мьютекс необходим для защиты переменной условия в любом случае, когда мое видение больше искажено, чтобы не видеть назначение переменной условия.