Reference and useful links
Introduction to look-free, wait free and the ABA problem:
http://www.hergert.me/blog/2009/12/25/intro-to-lock-free-wait-free-and-aba.html
ISO/IEC 9899:2011:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf
Toward a Better Use of C11 Atomics:
https://developers.redhat.com/blog/2016/01/14/toward-a-better-use-of-c11-atomics-part-1/
C++ concurrency in action:
http://www.bogotobogo.com/cplusplus/files/CplusplusConcurrencyInAction_PracticalMultithreading.pdf
C11 lock free stack:
http://nullprogram.com/blog/2014/09/02/
Lock-Free Programming - Herb Sutter - CppCon 2014:
Hazard pointers: safe memory reclamation for lock-free objects:
http://ieeexplore.ieee.org/document/1291819/#full-text-section
It's "locking" if it's blocking
https://yosefk.com/blog/its-locking-if-its-blocking.html
Do lock-free algorithms really perform better than their lock-full counterparts?