4

独自のメモリ マネージャーを実装し、次のように 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);

これは問題なく動作しますが、現在、ヒープ割り当てが多いマルチスレッド環境で開発しています。ヒープの競合を避けるために、各スレッドに独自のメモリ マネージャー インスタンスが必要です。オペレーターオーバーライドがそのスレッドのメモリマネージャーインスタンスを指すようにするにはどうすればよいですか?

4

1 に答える 1

1

スレッド ローカル ストレージが機能する可能性があります。

于 2012-07-16T22:07:04.060 に答える