This blog post is an introduction to lock-free programming. I'm writing this because this is the pre-requisite to understand my next post. This was also the content of my presentation for Qt Developer Days 2011. Lock-free programming is the design of algorithms and data structures that do not acquire locks or mutexes. When different threads in your program need to access the same data, we must ens