メモリープールは、指定された範囲またはアロケーターからメモリーの割り当てと解放を行い、スレッドセーフでスケーラブルな操作を提供します。次の表は、メモリープール・コンセプトを要約したものです。ここで、P はメモリープール・クラスのインスタンスを表します。
擬似署名 |
意味 |
---|---|
~P() throw(); |
デストラクター。割り当てられたオブジェクトのすべてのメモリーを解放します。 |
void P::recycle(); |
割り当てられたオブジェクトのすべてのメモリーを解放します。 |
void* P::malloc(size_t n); |
メモリープールから割り当てられた n バイトへのポインターを返します。 |
void P::free(void* ptr); |
ptr ポインターで指定されたメモリー・オブジェクトを解放します。 |
void* P::realloc(void* ptr, size_t n); |
ptr が指しているメモリー・オブジェクトに n バイトを再割り当てします。 |
memory_pool テンプレート・クラスおよび fixed_pool クラスは、メモリープール・コンセプトをモデル化します。