自定义分配机制

时间:2014-04-30 12:01:19

标签: c++ memory-management

我正在实现自己的内存机制。这是我的代码:

static tls::main_pool main_pool;
static tls::local_pool local_pool(main_pool);

void * operator new(size_t n) throw(std::bad_alloc)
{
    return local_pool.new_mem(n);
}

void operator delete(void * p) throw()
{
    local_pool.free_mem(p);
}

问题是在我的分配器被销毁之后会出现一些operator delete次调用,并且在我的分配器初始化时调用operator new。如何处理?

更新: 为了清楚起见,我不在分配器中使用operator new和delete,因此在一些系统或库调用中出现问题。

0 个答案:

没有答案