glibc 的 malloc() 遇到了错误:http://sourceware.org/bugzilla/show_bug.cgi?id=4349并且我正在考虑暂时解决,直到更新到更高版本的 glibc 是为有许多实例来来去去的小对象进行池分配。
小对象都派生自一个抽象基类。我想找到一个好的模式(使用 boost 是可以的)在基类中自动提供池分配,并让它为许多派生类正常工作。
这是否可以通过在抽象基类中定义一个 operator new() 来完成?它如何为每个可能具有不同实际内存大小的派生类组织不同的池?
最佳答案
一个明显的起点是 Boost Pool图书馆。不幸的是,您想要的模型尚未提供,尽管它被列为“ future 方向”下的唯一项目。 OTOH,这个库已经有一段时间没有更新了。它很快被更新以包含该模型的机会似乎有点遥远(至少对我而言)。
关于c++ - 如何在 C++ 中为抽象基类创建池分配器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3824822/