c – 多线程中的覆盖方法

我已经实现了自己的内存管理器,我重写了new和delete运算符,如下所示:

/** Override the Standard C++ new operator */
void* operator new (size_t size);
/** Override the Standard C++ delete operator */
void operator delete (void *p);

这工作正常,但现在我正在一个有很多堆分配的多线程环境中开发.为了避免堆争用,我希望每个线程都有自己的内存管理器实例.如何使操作符覆盖指向该线程的内存管理器实例?

解决方法

线程本地存储可以工作.

相关文章

文章浏览阅读315次。之前用C语言编过链表,这几天突然想用C+...
文章浏览阅读219次。碰到问题就要记录下来,防止遗忘吧。文章...
文章浏览阅读1.8k次,点赞11次,收藏37次。因为自己对决策树...
文章浏览阅读492次。C++ 设计模式之策略模式
文章浏览阅读683次。我也算是个C++的小白,对于C++中的谓语我...
文章浏览阅读225次。又看了一遍操作符的东西,感觉之前对操作...