Модель памяти C ++ 11 и доступ к различным членам одной и той же структуры в разных потоках

Предположим, выу нас есть следующие определения:

struct X
{
  char a, b;
};

X x;

А теперь предположим, что у вас есть два потока, один из которых читает и пишетx.a но никогда не получит доступx.b в то время как другой читает и пишетx.b но никогда не получит доступx.a, Ни один из потоков не использует блокировки или другие примитивы синхронизации. Гарантируется ли это в C ++ 11? Или он считается доступом к одному и тому же объекту и, следовательно, нуждается в блокировке?

Ответы на вопрос(1)

Ваш ответ на вопрос