スケーラブル・メモリープール

メモリープールは、指定された範囲またはアロケーターからメモリーの割り当てと解放を行い、スレッドセーフでスケーラブルな操作を提供します。次の表は、メモリープール・コンセプトを要約したものです。ここで、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 クラスは、メモリープール・コンセプトをモデル化します。