Стандартизированные способы упаковки нескольких значений в один атомC++

Программы на C++. Форум разработчиков
Anonymous
Стандартизированные способы упаковки нескольких значений в один атом

Сообщение Anonymous »

Предполагая, что у меня есть две атомарные переменные типов int32, я мог бы вместо этого представить их как std::atomic обе и зарезервировать первые 32 бита для моего первого in и последние для моего второго int .

Это похоже на значительную экономию места и времени на архитектурах x64, не говоря уже о том, что это позволяет использовать все виды черной магии, поскольку можно абстрагироваться от различных операций и выполнять их. атомарный:

Код: Выделить всё

first == a && second ==b
становится

Код: Выделить всё

both == ( int64(a) + int64(b) 

Подробнее здесь: [url]https://stackoverflow.com/questions/45530722/standardized-ways-to-pack-multiple-values-into-one-atomic[/url]

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