max_none クラス
freelist オブジェクトを最長値ゼロまでに制限する最大クラス オブジェクトを記述します。
構文
template <std::size_t Max>
class max_none
パラメーター
Max (最大値)
freelist
に格納する要素の最大数を決定する、最大クラス。
メンバー関数
メンバー関数 | 説明 |
---|---|
allocated | 割り当てられたメモリ ブロックの数を増やします。 |
deallocated | 割り当てられたメモリ ブロックの数を減らします。 |
full | フリー リストにメモリ ブロックを追加する必要があるかどうかを示す値を返します。 |
released | フリー リスト上のメモリ ブロックの数を減らします。 |
saved | フリー リスト上のメモリ ブロックの数を減らします。 |
要件
ヘッダー: <allocators>
名前空間: stdext
max_none::allocated
割り当てられたメモリ ブロックの数を増やします。
void allocated(std::size_t _Nx = 1);
パラメーター
_Nx
増分値。
解説
このメンバー関数は何も処理を行いません。 cache_freelist::allocate
による演算子 new
への呼び出しが成功するたび、その後に呼び出されます。 引数 _Nx は、演算子 new
によって割り当てられたチャンク内のメモリ ブロックの数です。
max_none::d eallocated
割り当てられたメモリ ブロックの数を減らします。
void deallocated(std::size_t _Nx = 1);
パラメーター
_Nx
増分値。
解説
このメンバー関数は何も処理を行いません。 このメンバー関数は、cache_freelist::deallocate
による演算子 delete
への呼び出しがあるたび、その後に呼び出されます。 引数 _Nx は、演算子 delete
によって割り当て解除されたチャンク内のメモリ ブロックの数です。
max_none::full
フリー リストにメモリ ブロックを追加する必要があるかどうかを示す値を返します。
bool full();
戻り値
このメンバー関数は常に true
を返します。
解説
このメンバー関数は cache_freelist::deallocate
によって呼び出されます。 呼び出しが true
を返すと、deallocate
はメモリ ブロックをフリー リストに置きます。false
を返す場合は、deallocate
は演算子 delete
を呼び出してブロックの割り当てを解除します。
max_none::released
フリー リスト上のメモリ ブロックの数を減らします。
void released();
解説
このメンバー関数は何も処理を行いません。 現在の最大クラスの released
メンバー関数は、cache_freelist::allocate
によって、フリー リストからメモリ ブロックが削除されるたびに、呼び出されます。
max_none::saved
フリー リスト上のメモリ ブロックの数を減らします。
void saved();
解説
このメンバー関数は何も処理を行いません。 cache_freelist::deallocate
によって、フリー リストにメモリ ブロックが置かれるたびに、呼び出されます。