目录
存储块的原理与创建
从本小节开始介绍存储块模块的实现。
存储块是一种非常简单、但是快速高效地内存分配方案。简而言之,预先分配若干固定大小的存储块,然后在需要时候从中取出即可。这就比需要时,再完全重新分配要简单快速很多。
视频课程中有讲malloc()的问题,这篇指南中还会补充一点其它知识。
主要内容
以下内容,作为视频内容的补充,从更宽的角度说明内存分配相关的几种方案,请根据需要参考学习。
一般来讲,在我们写代码过程中,能够看得见的几种涉及内存分配的情况如下。
全局/static变量
这类变量会在整个工程编译时,由编译器自动在RW区(可以简单理解为内存)预先分配好一块内存,然后每次使用时,直接读写这块固定的内存。
这种方案的好处是非常简单,分配的内存根据我们的代码写法可大可小,地址固定,非常灵活。缺点也比较明显,分配了就没办法回收利用。
块变量