Locking is cheap, switching a pointer around is cheap. The only expensive thing is waking up a thread that is waiting on a lock. Spinlocks avoid that problem, which is why they outperform other implementations in terms of throughput (of course inversely proportional to the amount of work you do during a lock).<p>Atomic operations have a fixed cost. Spinlocks only really have a cost when contention is high. When you&#x27;re just moving a pointer to another place, you&#x27;re not likely to have that much contention to make atomic operations worth it.