PoolAllocator
A pool allocator is a memory allocator that serves allocations from a pre-allocated pool of memory, usually consisting of many fixed-size blocks. It is designed to make frequent allocations and deallocations of objects of the same size fast and predictable, while reducing external fragmentation compared to general-purpose allocators.
On creation, a pool allocator reserves one or more blocks of memory and divides them into uniform
Variants include fixed-size block pools, object pools, and slab allocators. In practice, many libraries expose a
Advantages include fast, deterministic allocation times, improved cache locality for objects of the same size, and
In software design, pool allocators are chosen when predictable latency and performance are more important than