์ฐ๋ ๊ธฐ ๋ฐ์ดํฐ๊ฐ ๊ฐ๋น์ง ๋ฐ ๋๊น์ง ๋ฉ๋ชจ๋ฆฌ์ ์๋ฅํ๋ ๊ผด์ ๋ณด๊ธฐ ์ซ์๋ฐ C++์ฒ๋ผ ์ง์ ๋ฉ๋ชจ๋ฆฌ ํด์ ๊ฐ๋ฅํจ?
๊ทธ๋ฐ ๋ฐฉ๋ฒ์ด ์์ผ๋ฉด ์ค๋ธ์ ํธํ๋ง์ด๋ ๊ธฐ๋ฒ๋ ์์ง์์์๊น
ํ ์์๋๊ฑธ๋ก ์๋๋ฐ?
์ค๋ธ์ ํธ ํ๋ง์ด๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ ๋ค๋ฅธ ์์ญ์ C++ ์ธ๋ฆฌ์ผ์์๋ ์ค๋ธ์ ํธ ํ์ ์ฐ์ธ๋ค
ใด์ด๋ป๊ฒ ํ๋๋ฐ ๋ณ์ ์
์ง์ ํด์ ๋ชปํ๋๋ฐ ํ ์์๋๊ฑธ๋ก ์๋๋ฐ? ์ด์ง๋ํ๊ณ ์๋ค ์จ๋ฐใ ใ ใ
ใ ใ ใ ์ ์ด ๊ณ ๋ฉ์ ์๋ผ ์์ง๋ ์ด ์ง๋ํ๋ค ๊ฐ์ ์ ๋ฏธ ์ ๋ ๋นจ๊ณ ์๋ผ ์ข๊ฐ์ ์จ๋ฐ๋ จ์ ์์๊พธ ์๋น๋
๋ณ์ ๋ฒ๋ฌ์ง๋ ์ด ์๊พธ ์๊ฐ๋ฆฌ ๋๋ฆฌ๋ค ์ข๊ฐ์์๋ผ๊น ๋๊ฑฐ ์ ๋น์ ๋ฏธ ๋ค์ง๊ธฐ์ ์ ์ง๋ฅ์์ค์ด ๋ณด์ธ๋ค ์จ๋ฐ๋ผ๋ง
๊ฐ๋น์ง ์ง์ ํธ์ถํ๋ ๊ฑฐ ์์
GC.collect๋ก ์ง์ ํธ์ถํ ์๋ ์์ง๋ง ๊ฒ์ํด๋ณด๋๊น ๊ทธ๊ฒ๋ ์ฑ๋ฅ์ ํ ์์ธ ๋๋ค๊ณ ํ๋ค
๊ผฌ์ฐ๋ฉด unsafe ์ฐ์
ํจ์์์ฒด๋ ์๊ธดํ์์ ์ฐ๋ ๊ธฐ ์์ง ๋ช ๋ น๋ด๋ฆฌ๋๊ฑฐ ใ ใ ๊ทผ๋ฐ ํ์ ์๋๊ณ ๊ฑ ํด์ฃผ์ธ์ผํ๊ณ ๊ตฌ๊ฑธ๋ง ํ๋๊ฑฐ์ง ๋ฐ๋ก ํด์ค๋ค๋ ๋ณด์ฅ์๊ณ VM์ด ์ง๊ฐ ์์์
๋ชปํ๋ค๊ณ ๋ณด๋๊ฒ ๋ง์. GC.Collect๋ unsafe ์์ชฝ ๋ค ์์ฐ๋๋ง ๋ชปํจ.
ในใ