Почему атомарная структура из двух 64-битных переменных не защищена от блокировки на X86? [дубликат]C++

Программы на C++. Форум разработчиков
Anonymous
Почему атомарная структура из двух 64-битных переменных не защищена от блокировки на X86? [дубликат]

Сообщение Anonymous »

Недавно я смотрел одно из самых полезных видеороликов о std::atomics, остановился на обсуждении одного эпизода в 28:46 и решил самостоятельно проверить этот онлайн-обозреватель с флагом -latomic (иначе код не компилируется) с использованием компилятора x86-64 gcc 15-2, и он дает мне следующий результат на основе моего кода:

Код: Выделить всё

struct A {
long x;
long y;
A() = default;
};

int main() {
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79880987/why-is-an-atomic-struct-of-two-64-bit-variables-not-lock-free-on-x86[/url]

Вернуться в «C++»