我在 C++ 优化食谱上读到 STL 容器的标准分配器,例如 std::list、std::set、std::multi_set、std::map、e std::multi_map 可以被更高性能的块分配器。
块分配器具有更高的性能、低碎片和高效的数据缓存。
我在网上找到了声称比标准更快的 FSBAllocator。 http://warp.povusers.org/FSBAllocator/
我已经用 std::map 进行了尝试,发现似乎确实更快,但我的问题是 STL 实现怎么会比特定分配器慢,以及另一个分配器比标准分配器的缺点是什么?便携性和鲁棒性?我的代码必须在各种架构(win32、osx、linux)上编译。有人对这种固定大小的块分配器有经验吗?