3๋
๋์ ๊ฒ์๊ฐ๋ฐ์ ๊ฑฐ์ ๋ชปํด๋ณด๊ณ ์น๋ง ์ข ํ๋๋ฐ
์ฌ๊ธฐ์ ์ข ์ ๋๋ก ๋ง๋ ๋ค ํ๋ ์ฌ๋๋ค๋ณด๋ฉด ์ง์ง ์กด๋ ํํ์ด
์์ ์กธ๋ผ ์ด์ฌํ ๋ฃ๊ณ ์น์ชฝ์ ์ธ์ฃผ๋ ์ข ํ์๋๋ฐ
๊ฒ์์ชฝ์ผ๋ก ํ๋ ค๊ณ ๋ง์๋จน๊ณ 1๋ ๋์ c++์ด๋ ์ธ๋ฆฌ์ผ ๊ธฐ๋ณธ๋ฐ์ ๋ชป๋ฐฐ์ ๋๋ฐ ์ฌ๊ธฐ ๋ค๋ฅธ์ฌ๋๋ค ๋ง๋๋ ๊ฐ๋ฐ์ผ์ง๋ณด๋ฉด ์ผ๋ง๋ ๋ ๋ฐฐ์์ผ๋๋์ง ๊ฐ์ด ์์กํ
๋ญ ์๋ก ๋ฉํฐ์ฐ๋ ๋ฉ os๋ง์ง๋ c๊ฐ์ง๊ณ ๋ฆฌ๋ ์ค์ mutex cond var์ ๋๋ง ๊ฐ์ง๊ณ ์ค์ผ์ค๋ฌ ๊ตฌํ ์ด๋ฐ๊ฑฐ๋ง ํด๋ดค๋๋ฐ ์ค์ ๋ก ๊ฒ ๋ง๋ค๋ ์ธ๋ผ๋๊น ๋ณ์ ๋ณ ์ด์ํ allocator์ธ๊ฐ ๋ญ ๋ค ์๋ก๋ฐฐ์์ผ๋๊ณ
์ธ๋ฆฌ์ผ ํ ์คํธ์ฉ ๊ฒ์ ๋น๋ํ๊ณ ๋ฐฐํฌํ๋๊ฒ๋ ํ๊ตฌํ๋ ์ด์ํ ์๋ฌ์ณ๋์ 3์ผ ๊ณต์ค๋ถํด๋๊ณ
์๋ฒ์ฌ๋ ค์ ๋ฉํฐ๊ตฌํํ๋๊ฑฐ ์ฐจ์นํ๋๋ผ๋ ๊ทธ๋ํฝ ๊ตฌํ์ด๋ ๋ฐฉ๋ฒ๋ก ๋์์ธํจํด ์ด๋ฐ๊ฑฐ ๋ณด๋ฉด ๋ณผ์๋ก ์ง์ง ๋ด๊ฐ ๊ฐ๋ณ์ ๊ฐ์ด ๋๊ปด์ง
๋ค๋ฅธ์ฌ๋๋ค ๋ค ์กธ์ ํ๊ณ ๋ฐ๋ก ํ์ฌ ์ฐฉ์ฐฉ๋ค์ด๊ฐ๋๋ฐ ๋๋ ์กด๋ ์ด์ฌํ ์ฐ๊ฑฐ ๊ฐ์๋ฐ ์ง๊ธ ๋งํ๊ธด๋ฐ ๊ธฐ๋ณธ์ ์ธ ๋ฉํฐ๊ฒ์ํ๋ ๋ง๋ค์ด์ ๋ฐฐํฌ๋ฅผ ๋ชปํ๊ฒ ์
์ด๋ฒ์ ๊ฒ์์ฌ ์ธํด๋ฃ์๊ฑฐ๋ ์๋ฅ ๋ค์งค๋ฆฌ๊ณ ํ๋ ๊ฒจ์ฐ ๋ถ์๊ฑฐ๋ ๋ฉดํํ๊ณ
์ง๊ธ ๋ฐฉํ์ด๋ผ ํ๋ฃจ์ข ์ผ ๊ฐ๋ฐํ๋ฉด์ ์์ฆ ์ฐ๋ ai๋ ๋ฐฐ์๋ณด๊ณ ์ถ์ด์ ๊ฐ์ด ๊ณต๋ถํ๊ณ ์๊ธด ํ๋ฐ
๋ญ ๋ณดํต ์ปด๊ณต์์ ํ์ฌ์กธ์ ํ๋ ์ฌ๋๋ค ์ด๋์ ๋ ํ๋์ง๊ฐ ๊ถ๊ธํจ
๋ด๊ฐ ์กด๋๊ฒ ๋ค์ณ์ ธ์ ๋ต๋ ์๋๊ฑด์ง ๋๋ง ๊ทธ๋ ๊ฒ ์๊ฐํ๋๊ฑด์ง
์ฌ๊ธฐ์ ์ข ์ ๋๋ก ๋ง๋ ๋ค ํ๋ ์ฌ๋๋ค๋ณด๋ฉด ์ง์ง ์กด๋ ํํ์ด
์์ ์กธ๋ผ ์ด์ฌํ ๋ฃ๊ณ ์น์ชฝ์ ์ธ์ฃผ๋ ์ข ํ์๋๋ฐ
๊ฒ์์ชฝ์ผ๋ก ํ๋ ค๊ณ ๋ง์๋จน๊ณ 1๋ ๋์ c++์ด๋ ์ธ๋ฆฌ์ผ ๊ธฐ๋ณธ๋ฐ์ ๋ชป๋ฐฐ์ ๋๋ฐ ์ฌ๊ธฐ ๋ค๋ฅธ์ฌ๋๋ค ๋ง๋๋ ๊ฐ๋ฐ์ผ์ง๋ณด๋ฉด ์ผ๋ง๋ ๋ ๋ฐฐ์์ผ๋๋์ง ๊ฐ์ด ์์กํ
๋ญ ์๋ก ๋ฉํฐ์ฐ๋ ๋ฉ os๋ง์ง๋ c๊ฐ์ง๊ณ ๋ฆฌ๋ ์ค์ mutex cond var์ ๋๋ง ๊ฐ์ง๊ณ ์ค์ผ์ค๋ฌ ๊ตฌํ ์ด๋ฐ๊ฑฐ๋ง ํด๋ดค๋๋ฐ ์ค์ ๋ก ๊ฒ ๋ง๋ค๋ ์ธ๋ผ๋๊น ๋ณ์ ๋ณ ์ด์ํ allocator์ธ๊ฐ ๋ญ ๋ค ์๋ก๋ฐฐ์์ผ๋๊ณ
์ธ๋ฆฌ์ผ ํ ์คํธ์ฉ ๊ฒ์ ๋น๋ํ๊ณ ๋ฐฐํฌํ๋๊ฒ๋ ํ๊ตฌํ๋ ์ด์ํ ์๋ฌ์ณ๋์ 3์ผ ๊ณต์ค๋ถํด๋๊ณ
์๋ฒ์ฌ๋ ค์ ๋ฉํฐ๊ตฌํํ๋๊ฑฐ ์ฐจ์นํ๋๋ผ๋ ๊ทธ๋ํฝ ๊ตฌํ์ด๋ ๋ฐฉ๋ฒ๋ก ๋์์ธํจํด ์ด๋ฐ๊ฑฐ ๋ณด๋ฉด ๋ณผ์๋ก ์ง์ง ๋ด๊ฐ ๊ฐ๋ณ์ ๊ฐ์ด ๋๊ปด์ง
๋ค๋ฅธ์ฌ๋๋ค ๋ค ์กธ์ ํ๊ณ ๋ฐ๋ก ํ์ฌ ์ฐฉ์ฐฉ๋ค์ด๊ฐ๋๋ฐ ๋๋ ์กด๋ ์ด์ฌํ ์ฐ๊ฑฐ ๊ฐ์๋ฐ ์ง๊ธ ๋งํ๊ธด๋ฐ ๊ธฐ๋ณธ์ ์ธ ๋ฉํฐ๊ฒ์ํ๋ ๋ง๋ค์ด์ ๋ฐฐํฌ๋ฅผ ๋ชปํ๊ฒ ์
์ด๋ฒ์ ๊ฒ์์ฌ ์ธํด๋ฃ์๊ฑฐ๋ ์๋ฅ ๋ค์งค๋ฆฌ๊ณ ํ๋ ๊ฒจ์ฐ ๋ถ์๊ฑฐ๋ ๋ฉดํํ๊ณ
์ง๊ธ ๋ฐฉํ์ด๋ผ ํ๋ฃจ์ข ์ผ ๊ฐ๋ฐํ๋ฉด์ ์์ฆ ์ฐ๋ ai๋ ๋ฐฐ์๋ณด๊ณ ์ถ์ด์ ๊ฐ์ด ๊ณต๋ถํ๊ณ ์๊ธด ํ๋ฐ
๋ญ ๋ณดํต ์ปด๊ณต์์ ํ์ฌ์กธ์ ํ๋ ์ฌ๋๋ค ์ด๋์ ๋ ํ๋์ง๊ฐ ๊ถ๊ธํจ
๋ด๊ฐ ์กด๋๊ฒ ๋ค์ณ์ ธ์ ๋ต๋ ์๋๊ฑด์ง ๋๋ง ๊ทธ๋ ๊ฒ ์๊ฐํ๋๊ฑด์ง
์ ๋๋ก ํ๊ณ ์๊ตฌ๋ง ๋ญ
์นํ๋๋์ด ์๊ฒ์์ชฝ์ผ์ฉก๊ฑฐ๋ ค?
๋๊ฐ, ์ฌ๊ธฐ๋ ๋ฐํฐ์ง ใ ใ ใ
์น์ ๊ทธ๋ฅ ๊ฐ๋ฐ๋์๋ฆฌ ์ฐพ๋ค๊ฐ ๋ค์ด๊ฐ์ ์ผํ๊ฑฐ์๋๋ฐ ์ฌ๋ฌ๊ฐ์ง ํด๋ณด๋ค ๋ณด๋๊น ๊ฒ์์ชฝ์ด ์ข์์.. ๋จน๊ณ ์ด๊ฑฐ๋ง ์๊ฐํ์ผ๋ฉด ๊ทธ๋ฅ ์น์ผ๋ก ๊ฐ๋๊ฒ ํธํ๋๋ฐ ์ด๋ฉด์ ๊ผญ ํ๊ณ ์ถ๋๋ผ ๊ทธ๋ฅ ๊ทธ๋์ ๊ทธ๋ผ...
๋ฑํ ์ ๊ณ์ ์ผํ๊ณ ์ถ๋ค๊ธฐ๋ณด๋ค ๊ทธ๋ฅ ๊ฒ์์ ๋ง๋ค๊ณ ์ถ์๋ฐ ๋ฐฐ์ฐ๋๊ฒ ๋๋ฌด ๋๋ฆฌ๊ณ ๋ด๊ฐ ๋นก๋๊ฐ๋ฆฐ๊ฑฐ ๊ฐ๋ค๋ ๊ณ ๋ฏผ์ด์์
๋ ์ฌ๋ฌ ํ๋ก๊ทธ๋๋ฐ ๋ถ์ผ ํตํ์ด์ ๊ฒ์ ํ๋ก๊ทธ๋๋ฐ์ด ๊ฐ์ฅ ์ํ๊ธฐ๊ฐ ์ด๋ ต๋ค๊ณ ์๊ฐํจ ๊ฐ์ฅ ๋ฆฌ์์ค์ ๋ฏผ๊ฐํด์ ์ต์ ํ๊ฐ ๋นก์ธ๊ฒ ์กํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง ์์ง์ ๊ตด๋ ค์ผํ๊ณ ์คํ์ ๋ฐ๋ผ ์๊ตฌ์ฌํญ์ด ์ฒ์ฐจ๋ง๋ณ๋ก ๊ฐ๋ฆฌ๊ณ ์ํคํ ์ฒ ๋์์ธ ๋์ด๋๊ฐ ๋์ ์์ง์ ์๊ตฌ๋๋ ์ฝ๋์๋ ์ฅ๊ฐํ ํ๋ ์์ํฌ/๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๋ฆฌ๊ฐ๋ผ ํ ์ ๋์ ๋์์ OS/๋คํธ์ํฌ/๋ฉํฐ์ฐ๋ ๋ฉ/๊ทธ๋ํฝ ๊ฐ์ ๋ค์ํ ๋ถ์ผ๋ฅผ ๋ก์ฐํ๊ฒ ํ์ฉํ๊ณ ์์ผ๋ฉด์ ๊ทธ๋์ ์์ธ ๊ธฐ๋ฒ๋ค๋ ์์ญ๊ฐ์ง๋ ๋จ ๋ด๊ฐ ํ์ฌ์ ์๋ฒ์ผ์ ํ๋๋ฐ ํญ์ ํด๋ผ ๊ฐ๋ฐ์๋ค์ด ์ ๋ฐ ๋ณต์กํ ์์ง์ ๋ถ๋ค๊ณ ๊ฐ๋ฐํด์ผํ๋ค๋๊ฒ ์ํ๊น์ ์ ์๋ฒ๋ผ๊ณ ๊ณ ์ถฉ์ด ์๋ ๊ฑด ์๋์ง๋ง ํด๋ผ๋งํผ ๊ฐ๋ฆฌ์ง ์๊ฑฐ๋
๊ทธ๋ฌ๋๊น ๊ฒ์ ์์ง ์ฝ๋๊ฐ ์๋ ์ดํดํ๊ธฐ ํ๋ ๊ฒ ๋ง์. ๊ทธ๋ฅ ์ดํด ์ํ๊ณ ํ๋ฉด์ ์ธ ๋ ์ด์ด๋ง ์ฌ์ฉํด๋ ๊ฐ๋จํ ๊ฒ์์ ๋ง๋ค ์๋ ์์ง๋ง ์ ๋๋ก ๊ณต๋ถํ๊ณ ์์ ์์ฌ๋ก ์ฐ๋ ๋ ๋ฒจ๋ก ๊ฐ๋๊ฑด ๋ง๋ง์น ์์ ๊ทธ๋ฐ ๋ ๋ฒจ๋ก ๊ฐ๊ณ ์ถ๋ค๋ฉด ๊ณต๋ถํ ๋ ์ฒ์ฒํ ๋ฌด์์ ์ดํดํ๊ณ ์๊ณ ๋ฌด์์ ๋ชจ๋ฅด๋์ง ํ์ ํ๊ณ ๊ฐ ์์์ ๋ํด ์ฒ์ฒํ ์ธ๋ด์ฌ์ ๊ฐ์ง๊ณ ์ดํด๋ณด๋ ค๊ณ ํด์ผํจ
๋ณ๊ฐ๋ก ์ธ๋ฆฌ์ผ์ C++ ์ฝ๋๋... C++๋ฅผ ์ด๋์ ๋ ๋ง์คํฐํ๊ณ ๋ณด๋๊ฒ ์ข์ ์จ๊ฐ์ง์ ๋ค ํ๋ ๋์ด๋ผ
๊ทธ๋ฅ ์น๊ฐ๋ฐํด์ ์๊ธ๋ฐ์ผ๋ฉด์ ๊ฒ์๊ฐ๋ฐ์ ์ทจ๋ฏธ๋ก ํ๋ฉด ๋ ๊ฒ์ ์ ์ฌ์ ์ด๋ ค์ด๊ธธ์ ๊ฐ๋ ค๊ณ ํ๋;;;
๋ฐฐ์ด ๊ฑฐ ์จ๋จน์ด์ ๋ญ๊ฐ ๋ณต์กํ๊ณ ์ด๋ ค์ด ๊ฑฐ ๋ง๋ค๋ ค๊ณ ํ์ง ๋ง๊ณ ๊ทธ๋ฅ ๊ฒ์์ ๋ง๋ค์ด๋ด
์ด์ชฝ๊ธธ ์๋๋ฏ
๋๋ ์ปด๊ณต์กธ์ ํ๊ณ ์น์ชฝํ๋ค๊ฐ ์ ๋ํฐ๋ผ๋๊ฐ ์๋์ด๋ ธ๊น์ง ํ๊ฒ๋ ์ผ์ด์ค์ด๊ธด ํ๋ฐ ์ผ๋จ ๊ฐ ์ปด๊ณต ์กธ์ ํ ์ฌ๋์ด๋ ๊ตญ1๋น๊ฐ์๊ฑฐ ๋์จ ์ ์ ๋คํํ ๋ณ๋ก ๊ธฐ๋ ์ํ๋ ์ฒ์ฒํ ์ผํ๋ฉด์ ํ๊ณ ์ถ์ ๋ถ์ผ ์ ํ๋ฉด ๋จ. ์ด์ฐจํผ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๋๊ฒ ํ๋ค๋ณด๋ฉด ๋ค๋ฅธ ์ธ์ด๋ ๊ธ๋ฐฉ๊ธ๋ฐฉ ํ ์์๊ฑธ๋
์งฌ์ข์ฐจ๊ณ ๊พธ์คํ ๊ณต๋ถํ์ผ๋ฉด ๊ทธ๋ฅ ์ ๋ํฐ ์์ ํ๋ ์ ๋ ํ๊ณ ํด๋ก ์ฝ๋ฉ ํ๋๊ฐ ํ๊ณ ์ ํ๋ธ ๊ฐ์ข์ข ๋ณด๋ฉด ๋์ถฉ ๊ตฌ๋ญ์ ๋ญ ๋ง๋ค ์ ์์.
์ ์ ํํ ๋ญ์ํด?
์๋ ๋ณต์์ ๊ณต์ด๋ ๋ค๋ฅผ ๋ฐ ์๋ค. ํ๋ ์ธ๊ฐ์ ์์ง๋ง ๋ ๋ง๋ฆฌ๋ค ์ก๋๊ฑด ๊ทนํ ๋๋ฌผ์ง - dc App
๋ง์์ด ๊ธํด์ ๊ทธ๋
๊ทธ๋ฅ ํ๋ค๋ณด๋ฉด ๋ค ๋์ด๋๊ฒ ๋์ด์๋ค.. ๊ทธ๋ณด๋ค ๋ง์ฝ ํผ์์ ๋ฐฉํฅ ์ก๋๊ฒ ์ด๋ ต๋ค๊ณ ๋๊ปด์ง๋ฉด ์ผ๋จ ๋ค๋ฅธ ํ์ฌ์์ ์ ๊น ๊ตด๋ฌ๋ณด๋๊ฒ๋ ๋์์ง ์์๋ฏ
3ํ๋ ์ธ๋ฐ ๊ทธ์ ๋ํ๋ฉด ์กด๋ ์ํ๋๊ฑด๋ฐ