Является ли компилятор просто проверять, какие переменные изменяются между операторами блокировки и разблокировки и связывать их с мьютексом, поэтому есть эксклюзивный доступ к ним?
Или блокирует ли mutex.lock()
все ресурсы, видимые в текущей области?