Почему стандартные библиотеки не внедряют STD :: Atomic для страхов до 8 байтов без блокировки?C++

Программы на C++. Форум разработчиков
Anonymous
Почему стандартные библиотеки не внедряют STD :: Atomic для страхов до 8 байтов без блокировки?

Сообщение Anonymous »

Предполагая, что архитектура может поддерживать 8 байтовых скаляров бесплатно для STD :: Atomic. Почему стандартные библиотеки не предоставляют аналогичные специализации для структур, которые составляют менее 8 байтов? Ближайшая сила 2, которая больше или равна ширине структуры). Это было бы хорошо определено, потому что эти структуры требуются от STD :: Atomic, чтобы быть тривиально копируемыми. < /p>

Например. https://godbolt.org/z/sxseid, здесь что -то составляет всего 3 байта, но реализация вызывает __atomic_load и __atomic_exchange , оба из которых используют таблицу блокировки.

Подробнее здесь: https://stackoverflow.com/questions/558 ... 8-bytes-in

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