|
|||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||
プーリングを行うためのためのインターフェイスです。
ObjectPool は一般的でシンプルなプーリングインターフェイスを定義します。
必須となるメソッドは borrowObject と returnObject だけです。
以下に使用方法を示します:
|
Object obj = null; try { obj = pool.borrowObject(); //...オブジェクトを使用... } catch(Exception e) { //...例外をハンドル... } finally { // 確実にオブジェクトをプールに返す if(null != obj) { pool.returnObject(obj); } } |
BaseObjectPool を併せて参照ください。
| メソッドの概要 | |
Object |
borrowObject()
プールからインスタンスを取り出します。 |
void |
clear()
プール内にある使用されていないオブジェクトを削除し、関連するリソースを開放します(オプショナルな処理)。 |
void |
close()
このプールを閉じ、関連する全てのリソースを開放します。 |
int |
getNumActive()
現在プールから貸し出されているインスタンスの数を返します(オプショナルな処理)。 |
int |
getNumIdle()
現在プール内にある使用されていないインスタンスの数を返します(オプショナルな処理)。 |
void |
returnObject(Object obj)
プールにインスタンスを返します。 |
void |
setFactory(PoolableObjectFactory factory)
新たなインスタンスを生成するために使用する factory を設定します(オプショナルな処理)。
|
| メソッドの詳細 |
public Object borrowObject()
throws Exception
returnObject
または実装クラスやサブインターフェイスのそれと関連するメソッドを使用して
インスタンスをプールに返さなくてはなりません。
プール内のインスタンスが空の場合のこのメソッドの振る舞いは明示されません (各実装クラスで明示されるでしょう)。
Exception
public void clear()
throws Exception,
UnsupportedOperationException
UnsupportedOperationException - この実装がこの処理をサポートしない場合
Exception
public void close()
throws Exception
Exception
public int getNumActive()
throws UnsupportedOperationException
UnsupportedOperationException - この実装がこの処理をサポートしない場合
public int getNumIdle()
throws UnsupportedOperationException
取得
することのできるオブジェクトの数を対象とします。
UnsupportedOperationException - この実装がこの処理をサポートしない場合
public void returnObject(Object obj)
throws Exception
borrowObject
または実装クラスやサブインターフェイスのそれと関連するメソッドを使用して
取得されたインスタンスでなくてはなりません。
obj - プールに返す borrowObject() にて取得されたインスタンス
Exception
public void setFactory(PoolableObjectFactory factory)
throws IllegalStateException,
UnsupportedOperationException
factory を設定します(オプショナルな処理)。
factory - 新たなインスタンスを生成するために使用する PoolableObjectFactory
IllegalStateException - ファクトリを設定できる状態でない場合
UnsupportedOperationException - この実装がこの処理をサポートしない場合
|
|||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||