- Boost程序库完全开发指南:深入C++”准”标准库(第5版)
- 罗剑锋
- 258字
- 2020-08-27 16:45:18
3.6 pool库概述
如果读者学习过操作系统的内存管理机制和内存分配算法等知识,那么读者可能了解内存池的概念。简单来说,内存池预先分配了一块大的内存空间,然后就可以在其中使用某种算法高效快速地定制内存分配。
boost.pool库基于简单分隔存储的思想实现了一个快速、紧凑的内存池库,不仅能够管理大量的对象,还可以用作STL的内存分配器。在某种程度上讲,它近似于一个小型的垃圾回收机制,在需要大量分配/释放小对象时其效率很高,而且完全不需要考虑delete。
pool库包含4个组成部分:最简单的pool、分配类实例的object_pool、单件内存池singleton_pool和可用于标准库的pool_alloc,本书只介绍前3个组件。