The C++ Execution Model
summary
C++ defines a platform‑agnostic abstract machine with flat storage and threads whose evaluations are ordered by sequenced before, synchronizes with and ultimately happens before. The talk shows concrete consequences: nonatomic conflicting accesses yield a data race and undefined behavior; atomics and acquire/release create synchronizes‑with chains that guarantee visibility; a bounded thread‑pool with one worker deadlocks unless wait loops steal and run tasks (boost‑blocking fix demonstrated). It also covers forward‑progress classes and when relaxed atomics are or aren’t sufficient.
AI-written summary · about
chapters (7)
- 0:00Introduction
- 1:58The abstract machine
- 4:36Storage and memory model
- 9:25Thread evaluation
- 22:57Sequencing and synchronization
- 30:40Forward progress guarantees
- 47:46Q&A and conclusion








