Part 8
Concurrency
Doing more than one thing at a time without corrupting your data.
-
8.1
Threads
Starting work in parallel, and joining it back.
-
8.2
Data races and mutexes
The bug class that only appears in production, and how to exclude it.
-
8.3
Atomics and the memory model
The guarantees the hardware and the standard actually give you.
-
8.4
Futures, promises, and tasks
Getting results back from concurrent work.
-
8.5
Coroutines
Functions that suspend and resume, and what the compiler generates.