具有多个特定分配器的代理分配器

时间:2017-03-24 12:16:22

标签: c++ templates memory-management allocator

对于个人/学术上的讽刺,我正在使用自定义分配器,特别是池分配器。

我将采取的下一步是拥有一些类,每个类都有其特定的池分配器,但是每个空间请求都必须通过一个代理分配器,该分配器重定向到为需要空间的类调用正确的分配器。

代理分配器只是为了模拟统计分析,比如每个类的分配/释放次数等等。

对正确的分配器的调用应该尽可能地对用户来说是透明的,所以我想要类似于:

ClassA* a = proxyAllocator().allocate();
ClassB* b = proxyAllocator().allocate();

ProxyAllocator::allocate(){
    /* sort of swith-case to call the right allocator */
}

如果整个过程可能没有意识到我将要实现的类以使用分配器,就像分配器填充类分配器对的映射一样,程序运行以便能够调用,那将是很好的正确的分配器。

我已经将特定的poolAllocator视为一个模板化的单例,因此对于每个要求分配的类,它都可以被解析一次。

0 个答案:

没有答案