Sobes.tech
Junior — Middle

Kas notiek ar izpildes plūsmu, ja notiek resursu savstarpēja bloķēšana?

sobes.tech AI

Atbilde no AI

Ja Java gadījumā notiek deadlock, iesaistītie pavedieni uz visiem laikiem gaida, kad cits atbrīvos resursus, un nevar turpināt izpildi. Tas noved pie tā, ka šie pavedieni 'sasalst' un nebeizpildās, kas var novest pie visas programmas vai tās daļas aizsaldēšanas.

Deadlock notiek, kad divi vai vairāk pavedieni iegūst resursus dažādā secībā un katrs gaida, kad tiks atbrīvots resursu, ko tur cits pavediens.

Piemērs: pavediens A ir ieguvis resursu 1 un gaida resursu 2, bet pavediens B ir ieguvis resursu 2 un gaida resursu 1 — abi ir uz visiem laikiem bloķēti.