public abstract class AbstractObjectPool<E> extends Object
コンストラクタと説明 |
---|
AbstractObjectPool() |
修飾子とタイプ | メソッドと説明 |
---|---|
boolean |
clear()
すべての要素を オブジェクトプールから削除します。
|
protected abstract E |
createInstance()
具体的に新しいインスタンスを生成するメソッド。
|
protected void |
init(int minsize,
int maxsize,
boolean limit)
初期化メソッド
初期オブジェクト数、最大オブジェクト数、拡張制限を指定します。
|
protected void |
init(int minsize,
int maxsize,
boolean limit,
int limitTime)
初期化メソッド
初期オブジェクト数、初期配列数、拡張制限、オブジェクトの寿命を指定します。
|
boolean |
isEmpty()
オブジェクトプールが要素を持たないかどうかを判定します。
|
E |
newInstance()
キャッシュのインスタンスを返します。
|
protected void |
objectFinal(E obj)
オブジェクトプールから削除するときに呼ばれます。
|
protected E |
objectInitial(E obj)
オブジェクトプールに戻すとき(release するとき)に呼ばれます。
|
void |
release(E obj)
オブジェクトを、オブジェクトプールに戻します。
|
void |
remove(E obj)
オブジェクトを、オブジェクトプールから削除します。
|
int |
size()
オブジェクトプールの要素数を返します。
|
String |
toString()
内部状況を簡易的に表現した文字列を返します。
|
public AbstractObjectPool()
protected void init(int minsize, int maxsize, boolean limit)
minsize
- 初期オブジェクト数maxsize
- 最大オブジェクト数limit
- 拡張制限(true)/無制限(false)protected void init(int minsize, int maxsize, boolean limit, int limitTime)
init
を参照してください。
オブジェクトの寿命は、生成された時間からの経過時間(秒)だけ、キャッシュしておく
場合に使用します。
例えば、コネクション等で、長期間のプーリングがリソースを圧迫する場合や、
接続側自身が、タイマーで切断する場合など、オブジェクトの生存期間を
指定して管理する必要があります。minsize
- 初期オブジェクト数maxsize
- 初期配列数limit
- 拡張制限(true)/無制限(false)limitTime
- オブジェクトの寿命の時間制限値(秒)init( int , int , boolean )
public E newInstance() throws MissingResourceException
MissingResourceException
- 拡張制限により、新しいインスタンスを生成できない場合4.0.0.1 (2007/12/03) 生成リミットチェックを厳密に行う。 |
4.0.0.1 (2007/12/03) 生成リミットエラー時に、タイムアウトをチェックする。 |
protected abstract E createInstance()
public void release(E obj)
obj
- オブジェクトプールに戻すオブジェクトpublic void remove(E obj)
obj
- 削除するオブジェクトpublic int size()
public boolean isEmpty()
public boolean clear()
protected void objectFinal(E obj)
obj
- 終了処理を行うオブジェクトprotected E objectInitial(E obj)
obj
- 初期処理を行うオブジェクトWebアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.