Senior
Mis on deadlock?
sobes.tech AI
Vastus AI-lt
Deadlock (vastastikune blokeering) — olukord mitme niidi või jaotatud süsteemides, kus kaks või enam protsessi (või niiti) ootavad ressursse, mida kasutavad teised, ning ükski neist ei saa jätkata.
Klassikaline deadlock näide:
- Protsess A on omandanud ressursi 1 ja ootab ressursi 2.
- Protsess B on omandanud ressursi 2 ja ootab ressursi 1.
Mõlemad protsessid blokeerivad üksteist igaveseks.
Deadlockide vältimiseks kasutatakse:
- Ressursside omandamise hierarhiat (kõik protsessid omandavad ressursid samas järjekorras).
- Ootamise ajapiiranguid.
- Deadlockide tuvastamise ja lahendamise algoritme.
Testimisel on oluline kontrollida stsenaariume, mis võivad viia deadlockideni, et tagada süsteemi stabiilsus ja vastupidavus vigu.