Возможно ли реализовать атомарный обмен для интеллектуальных указателей на x86 / x86-64 без использования транзакционной памяти. Особенно интересует атомарный обмен для shared_ptr.
Есть CMPXCHG8B
а также CMPXCHG16B
инструкция по современным процессорам. Могут ли они быть использованы для реализации атомарного обмена для shared_ptr?
Задача ещё не решена.
Других решений пока нет …