Concurrency
Threads, locks and races — watch the interleavings that bite.
Concurrency progress0 / 15
- Threads vs ProcessesShared memory, or a wall between you.4m
- Race ConditionsTwo readers, one write survives.5m
- Locks and MutexesOne thread inside, everybody else waits.5m
- DeadlockEveryone holding what the next one needs.5m
- Thread PoolsHire the workers once, reuse them all day.4m
- Producer and ConsumerA bounded belt between the two sides.5m
- Async and the Event LoopOne thread, politely taking turns.5m
- Atomic OperationsIndivisible: nobody sees it half-done.4m
- SemaphoresCount the permits, not the holders.4m
- Designing Thread-Safe CodeDon't share, freeze it, or guard it.5m
- BackpressureAn unbounded queue is not a buffer, it is a delayed crash.5m
- Detecting DeadlockDraw who waits for whom; a closed ring is the proof.5m
- Sizing a Thread PoolMore threads stop helping the moment the work stops waiting.5m
- Blocking the Event LoopOne thread runs everything, so one rude call stops the world.5m
- Compare-and-SwapPublish the new value only if nobody changed the old one.5m
Quiz yourself: 3 questions from this module
1 / 3