上中下三个classes分析

Loki allocator的三个类,从低阶到高阶分别为:Chunk, FixedAllocator, SmallObjAllocator
Chunk:pData指针,指向分配的一个chunk,firstAvailableBlock_索引,指向第一个可用区块是第几块,blocksAvailable_目前还可以供应的区块数
FixedAllocator:chunks_是vector放了很多chunk,allocChunk_和deallocChunk_是指针,指向某两个chunk
SmallObjAllocator:pool_是vector放了很多FixedAllocator, pLastAlloc和pLastDealloc两个指针指向pool里的某两个
Class Chunk分析

Init:初始化,被更上层的class调用。new调用mallloc创建对象,分配一大块chunk。
Reset:可用的block个数为64,第一个可以的block的编号为0,然后一个for循环,把每个block的第一个字节当作索引index使用(类似于嵌入式指针)
Release:使用delete[],释放空间,还给操作系统

Chun

最低0.47元/天 解锁文章
7万+

被折叠的 条评论
为什么被折叠?



