Një deadlock është një gjendje ku dy ose më shumë thread-e janë secili i bllokuar përgjithmonë, secili duke pritur për një burim që një tjetër e mban. Asgjë nuk përparon.
Katër kushtet e nevojshme (Coffman)
Të katërta duhet të vlejnë njëkohësisht — hiq cilindo dhe deadlock-u bëhet i pamundur:
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)
