Concurrency is all about signalling and co-ordination, about sharing resources and not stepping on toes. In this talk we will discuss lock free concurrency, with one of the most basic construction blocks as our example data-structure: the glorious Queue! I will be sharing some of the lessons learnt in building JCTools an open source library aiming to build best of breed lock free data structures.
– Implementing a bounded SPSC queue (Single Producer Single Consumer)
– Lazy set vs. volatile store
– Multi-Producer: a CAS loop, what’s it for and implications
– Volatile load surprises!
– False Sharing, data padding & JOL
– Benchmarking concurrent data structures