(the older articles here were written before I totally understood this stuff but I believe they are still correct, if a bit more confused)
Part 1 : Introduction to the issues, volatile, memory barriers, and interlocked ops.
Part 2 : Thread Safe singleton and info about CRITICAL_SECTION.
Part 2.01 : A bunch of links.
Part 2.02 : Clarification of x86 memory model and dependent read race issues in earlier posts.
Part 2.5 : TLS
Part 3.0 : Intro to lock free programming and memory models.
Part 3.1 : Introducing CAS and cache line issues.
Part 4.1 : LIFO MPMC stack
Part 4.2 : LIFO MPMC stack : ABA
Part 4.3 : LIFO MPMC stack : issues
Part 5.1 : FIFO SPSC queue : simple and fast
Part 6 : Wrap up , Relacy, and the code.
Added 06-12-2012 : See also the newer threading post index .