Memory Pool C 實作
基本介紹
C 在 run time 期間可以使用 malloc 來動態取得記憶體
1 | #define N 10000 |
不過當程式執行時,如果一直反覆 malloc 和 free 記憶體區塊。
會導致記憶體的碎片問題,碎片一多可使用的記憶體就變少
最後產生 memory leak,而 memory pool 的想法是
預先就 alloc 一個大的記憶體區塊,而程式在 run time 期間
就只會對此區塊的記憶體做分配 (allocate)、使用 (access)、歸還 (free)
這樣就不會有記憶體破碎的問題