Notes / tag / concurrency-design

#concurrency-design

9 notes

1 — Thread Safety

Defines what it means for a class or method to be thread-safe and the correctness guarantees a design must uphold under concurrent access.

low-level-design concurrency-design book

2 — Synchronization

Covers synchronization mechanisms that coordinate access to shared mutable state across multiple threads.

low-level-design concurrency-design book

3 — Locks

Examines lock types — mutexes, read-write locks, reentrant locks — and the tradeoffs each makes between safety and throughput.

low-level-design concurrency-design book

4 — Concurrent Collections

Surveys concurrent collection types designed for safe multi-threaded access without requiring external locking by the caller.

low-level-design concurrency-design book

5 — Producer Consumer

Walks through the producer-consumer pattern for decoupling work generation from work processing via a shared bounded queue.

low-level-design concurrency-design book

6 — Thread Pools

Explains thread pool design for bounding concurrency and reusing worker threads instead of spawning a new thread per task.

low-level-design concurrency-design book

7 — Deadlocks

Analyzes how deadlocks arise from circular resource dependencies among threads and the design practices that prevent them.

low-level-design concurrency-design book

8 — Race Conditions

Examines how race conditions emerge from unsynchronized access to shared mutable state and how a design can eliminate them.

low-level-design concurrency-design book

9 — Lock-Free Design

Introduces lock-free and wait-free design techniques that use atomic operations instead of locks to coordinate concurrent access.

low-level-design concurrency-design book