Sitemap
OD

OD

Flutter developer

Member-only story

Flutter Memory Leak

30 min readMar 6, 2026

--

๐Ÿšš Flutter Memory Debugging Series

โ€œ์ด ๊ธ€์€ ๋ฉค๋ฒ„ ์ „์šฉ ์ฝ˜ํ…์ธ ์ด๋‚˜, [์—ฌ๊ธฐ]๋ฅผ ํด๋ฆญํ•˜์‹œ๋ฉด ์ „์ฒด ๋‚ด์šฉ์„ ๋ฐ”๋กœ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.โ€

Memory๊ด€๋ฆฌ๋Š” Application์„ฑ๋Šฅ์— ๋งŽ์€ ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.

Memory ๋ฌธ์ œ๋Š” ์ฃผ๋กœ ๋ถˆํ•„์š”ํ•˜๊ฒŒ memory๋ฅผ ๋งŽ์ด ์ ์œ ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•ด์ง€๋ฉด app์ด crash ๋˜๊ฑฐ๋‚˜ ์•ฑ ์†๋„๊ฐ€ ๋А๋ ค์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Dart์—์„œ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค๋ฉด heap memory๊ณต๊ฐ„์— ์ƒ์ฃผํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ณต๊ฐ„(heap)์€ Dart VM์— ์˜ํ•ด ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค. Dart VM์€ memoryํ• ๋‹น๊ณผ GC(garbage collection)์„ ์ด์šฉํ•ด memoryํ•ด์ œ๋ฅผ ํ•ฉ๋‹ˆ๋‹ค.

Memory leak์€ ์™œ ๋ฐœ์ƒํ• ๊นŒ์š”?

GC๋Š” ์ค€์ˆ˜ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋ฅผ ํ•˜์ง€๋งŒ ์™„๋ฒฝํ•˜๊ฒŒ ํ•  ์ˆ˜ ์—†์–ด์š”. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•ญ์ƒ object์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๊ด€๋ฆฌํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ณด์กฐํ•˜๊ธฐ ์œ„ํ•ด DevTool์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ์™œ GC๋Š” ๋ชจ๋“  object๋ฅผ ์ ์ ˆํžˆ unallocate์‹œํ‚ค์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ์ผ๊นŒ์š”?

GC๊ฐ€ ๋ชจ๋“  unreachable object๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋ณธ ์กฐ๊ฑด์€, โ€œApplication์ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” object๋Š” unreachable ์ด์—ฌ์•ผ ํ•œ๋‹คโ€ ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋งŒ์•ฝ, ๋” ์ด์ƒ ํ•„์š”์—†๋Š” object์ธ๋ฐ reference๊ฐ€ ๋‚จ์•„ ์žˆ๋‹ค๋ฉด ์–ด๋–จ๊นŒ์š”? GC๋Š” unallocate๋ฅผ ํ•  ์ˆ˜ ์—†์ฃ . GC ์ž…์žฅ์—์„œ๋Š” ์–˜๋“ค์ด ์—ฌ์ „ํžˆ ์‚ฌ์šฉ๋œ๋‹ค๊ณ  ์—ฌ๊ธฐ๊ฒŒ ๋˜๋‹ˆ๊นŒ์š”. ์ด๋Ÿฐ์ผ์€ global ๋ณ€์ˆ˜, static ๋ณ€์ˆ˜, ๋˜๋Š” lifecycle์ด ๊ธด object์—์„œ ์ž์ฃผ ๋ฐœ์ƒ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ๊ฒŒ ๋ฐ˜๋ณต๋˜๋ฉด out-of-memory error๊ฐ€ ๋ฐœ์ƒ๋˜๋Š” ๊ฒƒ์ด์ฃ .

diagram์œผ๋กœ ์‚ดํŽด๋ณด์ฃ .

์šฐ๋ฆฌ๋Š” Object A๊ฐ€ GC์— ์˜ํ•ด unallocate๋˜๋Š” ์ƒํ™ฉ์„ ์‚ดํŽด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ(GC)๋Š” ํ˜„๋Œ€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์ค€์ˆ˜ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ, ๋ชจ๋“  ์ƒํ™ฉ์„ ์™„๋ฒฝํ•˜๊ฒŒ ํ†ต์ œํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐœ๋ฐœ์ž๋Š” GC์˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๋งน์‹ ํ•˜๊ธฐ๋ณด๋‹ค, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด ๊ฐ์ฒด๋“ค์ด ์ ์ ˆํžˆ ํ•ด์ œ๋˜๊ณ  ์žˆ๋Š”์ง€ ํ•ญ์ƒ ์ฃผ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด DevTools์™€ ๊ฐ™์€ ๋ฉ”๋ชจ๋ฆฌ ํ”„๋กœํŒŒ์ผ๋ง ๋„๊ตฌ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผโ€ฆ

--

--