En deadlock er en tilstand, hvor to eller flere tråde hver især er blokeret for altid, hver ventende på en ressource, som en anden holder. Intet gør fremskridt.
De fire nødvendige (Coffman-)betingelser
Alle fire skal gælde på én gang — fjern bare én, og deadlock er umulig:
1. Mutual exclusion → a resource is held exclusively (only one holder at a time)
2. Hold and wait → a thread holds one resource while waiting to acquire another
3. No preemption → resources can't be forcibly taken; only released voluntarily
4. Circular wait → a cycle: T1 waits for R2 (held by T2), T2 waits for R1 (held by T1)
