Атомарные чтения в C

Согласно C ++ читает и записывает int Atomic? , из-за проблем с кэшированием процессора, читает целые числа (и, следовательно, указатели - или так я предполагаю ) не являются атомарными в C. Итак, у меня вопрос, есть ли какая-то сборка, которую я мог бы использовать, чтобы сделать чтение атомарным,или мне нужно использовать блокировку? Я просмотрел несколько наборов библиотек атомарных операций и пока не могу найти функцию для атомарного чтения.

РЕДАКТИРОВАТЬ: Компилятор: Clang 2.9 РЕДАКТИРОВАТЬ: Платформа: x86 (64-бит)

Спасибо.

10
задан Community 23 May 2017 в 10:34
поделиться