Мой вопрос заключается в том, как быстро осуществляется доступ к атомарным переменным в C ++ с помощью класса C ++ 0x actomic <>? Что идет вниз на уровне кеша. Скажем, если один поток просто читает его, нужно ли ему загружаться в ОЗУ или он может просто читать из кэша ядра, в котором он выполняется? Предположим, что архитектура x86.
Мне особенно интересно узнать, читает ли поток из него, а другой поток не пишет в это время, будет ли наказание таким же, как и для чтения нормальной переменной. Как атомные переменные доступны. Включает ли каждая простота чтения запись, как в сравнении и обмене? Реализуются ли атомарные переменные с помощью сравнения и замены?