Какие атомарные операции есть в Go?

Ответ

Пакет sync/atomic: Add, CompareAndSwap (CAS), Load, Store для типов int32, int64, uint32, uint64, uintptr. atomic.Value для произвольного типа (Store/Load). Нет атомарных операций для float и сложных структур - только через Value или Mutex.

var n int64
atomic.AddInt64(&n, 1)
atomic.CompareAndSwapInt64(&n, 0, 1)
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.