Boost ヘッダー "pool.hpp"(pool.html を見よ)をインクルードしている。
ObjectPool 型のオブジェクトがシステムからメモリーを必要とするときはいつでも、それのテンプレートパラメーター UserAllocator がシステムへ要求を出す。 リクエストされる量はダブリングアルゴリズムによって決定される。 言い換えると、より多くのシステムメモリーが割り当てられるとき、要求される量は2倍になるということである。 ユーザーは以下に述べる拡張によってダブリングアルゴリズムを管理することができる。
ユーザーは ObjectPool のコンストラクタに追加のパラメータを渡すことができる。 このパラメータは size_type 型で、そのオブジェクトがシステムメモリーを初めて必要とするときに要求するチャンクの数である。 デフォルト値は 32 である。このパラメーターは 0 であってはならない。
関数size_type get_next_size() const; と void set_next_size(size_type);のペアはユーザーに明示的なnext_sizeの読み書きを許す。 この値はオブジェクトが次にシステムメモリーから割り当てを必要とするときに要求するチャンクの数である。 この値を 0 に設定してはならない。
template <typename ElementType, typename UserAllocator = default_user_allocator_new_delete> class object_pool: protected pool<UserAllocator> { ... // public interface };
Copyright © 2000, 2001 Stephen Cleary (shammah@voyager.net)
This file can be redistributed and/or modified under the terms found in copyright.html
This software and its documentation is provided "as is" without express or implied warranty, and with no claim as to its suitability for any purpose.