Introduction to Lock-free Programming
summary
Explains why lock-free programming is difficult by showing what CPUs do that causes subtle bugs and pitfalls, and demonstrates parts of simple lock-free data structures as concrete examples; aims to highlight risks so developers think twice before writing lock-free code.
AI-written summary · about
chapters (15)
- 0:00Intro
- 2:04What could go wrong
- 4:00Forget everything
- 5:51Invariants
- 10:49Atomic Variables
- 14:27Compare Exchange
- 17:29Atomic
- 19:02Spinlock
- 23:05Lockfree
- 27:36Lockfree Stack
- 31:05Pop
- 36:20Ice
- 37:34ABA
- 40:31FCD
- 48:48Berkeley
related talks
01h 00mLock-Free Programming (or, Juggling Razor Blades), Part I
59mLock-free by Example
52mBest Practices for Concurrency
01h 02mA Lock-Free Atomic Shared Pointer in Modern Cpp
05mC++ Koans
01h 05mIntroduction to Wait-free Algorithms in C++ Programming
44mThis is why we can('t) have nice things
59mThreads and Locks must Go
