Hold and wait
-
[Java] ์๋ฐ ์ฐ๋ ๋ ๊ต์ฐฉ์ํ(deadlock)Android/Java 2021. 2. 7. 17:01
์ด ๊ธ์ "์๋ฐ ์จ๋ผ์ธ ์คํฐ๋" ๋ด์ฉ์ ๊ฐ์ง๊ณ ๊ณต๋ถํ์ฌ ์์ฑํ ๊ธ์ ๋๋ค. Thread DeadLock ์ด๋? ๋ฉํฐ ์ฐ๋ ๋ ํ๋ก๊ทธ๋๋ฐ์์ ๋๊ธฐํ๋ฅผ ํตํด ๋ฝ์ ํ๋ํ์ฌ ๋์ผํ ์์์ ์ฌ๋ฌ ๊ณณ์์ ํจ๋ถ๋ก ์ฌ์ฉํ์ง ๋ชปํ๋๋ก ํ์์ต๋๋ค. ํ์ง๋ง ๋ ๊ฐ์ ์ฐ๋ ๋์์ ์๋ก๊ฐ ๊ฐ์ง๊ณ ์๋ ๋ฝ์ด ํด์ ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ํ๊ฐ ์๊ธธ ์ ์์ผ๋ฉฐ ์ด๋ฌํ ์ํ๋ฅผ ๊ต์ฐฉ์ํ(deadlock) ์ด๋ผ๊ณ ํฉ๋๋ค. ๊ต์ฐฉ์ํ๊ฐ ๋๋ฉด ์ด๋ค ์์ ๋ ์คํ๋์ง ๋ชปํ๊ณ ์๋ก ์๋๋ฐฉ์ ์์ ์ด ๋๋๊ธฐ๋ง ๋ฐ๋ผ๋ ๋ฌดํ์ ๋๊ธฐ ์ํ์ ๋๋ค. DeakLock ๋ฐ์ ์กฐ๊ฑด ์ํธ ๋ฐฐ์ (Mutual Exclusion) : ํ ์์์ ๋ํด ์ฌ๋ฌ ์ฐ๋ ๋ ๋์ ์ ๊ทผ ๋ถ๊ฐ ์ ์ ์ ๋๊ธฐ (Hold and Wait) : ์์์ ๊ฐ์ง๊ณ ์๋ ์ํ์์ ๋ค๋ฅธ ์ฐ๋ ๋๊ฐ ์ฌ์ฉํ๊ณ ์๋ ์..