Код: Выделить всё
std::atomic counter = 0;
void fn()
{
while(true)
{
++counter;
if(counter > 1000)
break;
}
}
будет Поток 2 подождите, чтобы считать счетчик до тех пор, пока поток 1 не завершит увеличение? ? Будут ли они читать в то же время или одна переменная блокировки потока будет прочтать в следующем выпуске только тогда, чем другой поток может прочитать?
Подробнее здесь: https://stackoverflow.com/questions/794 ... y-how-fine