GNU 下的扩展 Allocator 都放在 ext 目录下,有如下几种
- array_allocator
- bitmap_allocator
- debug_allocator
- extptr_allocator
- malloc_allocator
- mt_allocator
- new_allocator
- pool_allocator
- throw_allocator
new_allocator 和 malloc_allocator
new_allocator 内部通过 ::operator new()
和 ::operator delete()
进行分配和释放。
malloc_allocator 内部通过使用 C 函数 malloc
和 free
进行内存分配与释放。
这两个 allocator 都没有做什么特殊设计。
pool_allocator
GNU std::alloc 运行模式