autoreleasepool.. ์ด๋๊ฐ์์ ๋ค์ด๋ดค์ง๋ง ์ธ์ ์ฐ๋์ง๋ ์ ํ ๋ชฐ๋๋ค. ํ๋ฒ ์์๋ณผ๊น?
autoreleasepool
์ด๋ฐ ์ฝ๋๊ฐ ์๋ค๊ณ ํ์. ๋ฒํผ์ ๋๋ฅด๋ฉด 1์ต๊ฐ์ ์ด๋ฏธ์ง๊ฐ ์์ฑ๋๋ค. ์ง๊ธ ์ด ์ํฉ์์ ๋ฒํผ์ ๋๋ฅด๋ฉด ์ด๋ป๊ฒ ๋ ๊น? ํ๋ฉด์ด ๋ฉ์ถ๋ค. ๊ธฐ๋ณธ๋์์ด main thread์์ ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฉ๋ชจ๋ฆฌ๋ ์์ฒญ๋๊ฒ ์ฆ๊ฐํ ๊ฒ์ด๋ค. for ๋ฌธ์ ๋ฒ์ด๋๊ธฐ์ ์๋ image๊ฐ ๋ฉ๋ชจ๋ฆฌ ์์ ์ฌ๋ผ๊ฐ ๋ค ํ ๋น ํด์ ๋์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.
๋จธ๋ฆฌ๋ฅผ ๊ตด๋ ค๋ณธ๋ค๊ณ , ์ผ๋จ main thread๋ฅผ ๋ฒ์ด๋์ ์ค์ฝ๋๋ฅผ ๋์์์ผฐ๋ค. (์ฌ์ค ์ด๊ฒ๋ณด๋ค ์ข์ ๊ฒ์ operation์ ๋ง๋ค์ด์ ์์ concurrentํ๊ฒ ๋์์ํค๋๊ฒ ๋ ๋น ๋ฅด๊ธด ํ๋ค) ๊ทธ๋์ ๋ค๋ฅธ ์ค๋ ๋์์ ํด๋น ๋์์ ํ๋๋ก ํ์ฌ ํ๋ฉด์ด ๋ฉ์ถ๋ ๊ฒ์ ๋ฐฉ์ดํ๋ค. ํ์ง๋ง ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ฆ๊ฐํ๋ ๊ฒ์ ๋ณํจ์๋ค. ์ด ์ํฉ์์ for ๋ฌธ ์ค์ฝํ ์์์ ๋์ํ ํ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํด์ ๋๋๋ก ํ ์๋ ์์๊น?
๊ทธ ๋ ์ฌ์ฉํ๋ ๊ฒ์ด autoreleasepool
์ด๋ค. ํด๋น ์ค์ฝํ๋ฅผ ๋ฒ์ด๋ ๋๋ง๋ค ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋น์ํฌ ์ ์์ด, ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค.