AntiPattern
Locking Causes Contention Deadlocks
over-synchronization-contention-deadlocks
Shared synchronization primitives (global locks, asyncio.Lock, thread-shared Random, or blocking sleeps) create lock-order inversion and contention, so tasks cannot make progress, leading to deadlocks or stalled concurrency despite expected parallelism.