Мне нужно реализовать блокировку на блоке с областью видимости.Я обнаружил, что std :: lock_guard реализует то же самое:
std :: lock_guard
Указывает, что
пытается завладеть мьютексомэто дано.Когда элемент управления покидает область, в которой был создан объект lock_guard, lock_guard разрушается и мьютекс освобождается
Но снова он здесь заявляет
Если блокировка вызываетсяпоток, которому уже принадлежит мьютекс, поведение не определено: например, программа может зайти в тупик.
std :: mutex :: lock
std :: mutex :: lock вызывается внутренне std :: lock_guard - у меня есть сценарий, что обратный вызов будет вызывать метод-член, когда данные поступают на порт - ожидается, что данные могут поступать в виде кратных, когда это касается методавыполняется одним обратным вызовом?