Lock-Free Programming: Progress Without Blocking - Compare-and-Swap: Foundation of Lock-Free Concurrency | OneNoughtOne