Sobes.tech
Senior

Čo je deadlock?

sobes.tech AI

Odpoveď od AI

Deadlock (vzájomné blokovanie) — situácia v systémoch s viacerými vláknami alebo distribuovaných systémoch, keď dva alebo viac procesov (alebo vlákien) čakajú na zdroje, ktoré sú obsadené inými, a žiadny z nich nemôže pokračovať.

Klasický príklad deadlocku:

  • Proces A získal zdroj 1 a čaká na zdroj 2.
  • Proces B získal zdroj 2 a čaká na zdroj 1.

Oba procesy sa navzájom blokujú na večnosť.

Aby sa predišlo deadlockom, používajú sa:

  • Hierarchia získavania zdrojov (všetky procesy získavajú zdroje v rovnakom poradí).
  • Časové limity čakania.
  • Algoritmy detekcie a riešenia deadlockov.

V testovaní je dôležité overiť scenáre, ktoré môžu viesť k deadlockom, aby bola zabezpečená stabilita a odolnosť systému.