Теперь есть несколько потоков считывателей. Каждый поток считывает значение x и y . Идея состоит в том, что если есть < /p>
"один глобальный заказ" < /p>
< /blockquote>
Тогда {x = 0, y = 1} и {x = 1, y = 0} не видно вместе. std :: atomic готово . Готовый флаг похож на спусковой крючок. Все потоки могут запустить свою соответствующую логику только после того, как готова - true
Но удивительно, я получаю результат {0,1} и {1,0} на моей машине.
Код: Выделить всё
#include
#include
#include
#include
const char *machine()
{
std::cout
Подробнее здесь: [url]https://stackoverflow.com/questions/79699895/how-does-the-single-global-order-in-stdmemory-order-seq-cst-work[/url]