Sobes.tech
Junior — Middle

Šta se dešava sa tokom izvršenja ako dođe do međusobnog blokiranja resursa?

sobes.tech АИ

Одговор од АИ

Ako u Javi dođe do deadlock-a, niti koje učestvuju u ovom blokiranju zauvek čekaju na oslobađanje resursa od strane drugih i ne mogu da nastave sa izvršavanjem. To dovodi do toga da te niti 'zamrznu' i ne završavaju, što može dovesti do zamrzavanja cele aplikacije ili njenog dela.

Deadlock se dešava kada dve ili više niti zauzimaju resurse u različitom redosledu i svaka od njih čeka na oslobađanje resursa koji drži druga nit.

Primer: nit A je zauzela resurs 1 i čeka resurs 2, dok nit B zauzela resurs 2 i čeka resurs 1 — obe su zauvek blokirane.