Game engines (Unreal's object pools, id Software's classic Quake allocators) and network servers handling millions of packets per second all rely on exactly this free-list pattern to avoid the ~100-200ns cost of glibc's malloc, since a general-purpose allocator's bookkeeping is wasted overhead when every object is the same size. Nginx's connection-pool allocator uses this same O(1) push/pop design because predictable latency under load matters more than general-purpose flexibility.