|
|||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||
java.lang.Objectorg.apache.commons.pool.BaseObjectPool
org.apache.commons.pool.impl.GenericObjectPool
詳細な設定の可能な ObjectPool の実装です。
適切な PoolableObjectFactory と対となって動作することにより
GenericObjectPool は強固な任意のオブジェクトのプーリングの機能を提供します。
GenericObjectPool は多くの設定可能なパラメータを提供します。
maxActive は同時にプールから取り出すことのできるオブジェクトの最大数を制御します。
マイナスの値が設定された場合には同時にプールから取り出すことのできるオブジェクトの制限を行いません。
maxActive を超えた場合、プールは使い尽されていることになります。
maxIdle はプール内に保持できる未使用のオブジェクトの最大数を制御します。
マイナスの値が設定された場合には同時にプール内に保持できるオブジェクトの制限を行いません。
whenExhaustedAction
はプールが使い尽されている場合の borrowObject() メソッドの振る舞いを指定します:
whenExhaustedAction が
WHEN_EXHAUSTED_FAILの場合、
borrowObject() は NoSuchElementException を投げます。
whenExhaustedAction が
WHEN_EXHAUSTED_GROW の場合、
borrowObject() は新たなオブジェクトを生成し、返します
(実質、maxActive は意味をなしません)。
whenExhaustedAction が
WHEN_EXHAUSTED_BLOCK の場合、
borrowObject() は新たなもしくは未使用のオブジェクトが利用できるまで(Object.wait() を呼んで)待機します。
有効な maxWait が設定されている場合、
borrowObject() は設定されたミリセカンド待機した後に NoSuchElementException を投げます。
maxWait がマイナスの値だった場合
borrowObject() は無期限に待機します。
testOnBorrow が設定されている場合、プールは
borrowObject() メソッドにて取り出される前に
(提供されたファクトリの PoolableObjectFactory.validateObject(java.lang.Object) メソッドを使用して)
オブジェクトが有効かどうかの確認を試みます。
有効でないと判断されたオブジェクトはプールから破棄され、他のオブジェクトが取り出されます。
testOnReturn が設定されている場合、プールは
returnObject(java.lang.Object) メソッドにて戻される前に
(提供されたファクトリの PoolableObjectFactory.validateObject(java.lang.Object) メソッドを使用して)
オブジェクトが有効かどうかの確認を試みます。
有効でないと判断されたオブジェクトはプールから破棄されます。
オプションとして、プール内を走査して不正な状態でプール内に居続けるオブジェクトを排除する設定をすることができます。 これは非同期な "未使用オブジェクト排除" スレッドで行われます。 "未使用オブジェクト排除" スレッドの挙動は以下の属性で設定されます:
timeBetweenEvictionRunsMillis
は排除スレッドがオブジェクト排除処理を実行する前にどのくらいの間スリープするかを示します。
マイナスの値が設定された場合、排除スレッドは起動しません。
minEvictableIdleTimeMillis
はオブジェクトがプール内に未使用状態でいられる時間の最小値を指定します。
未使用状態でいる時間がこの値に達すると排除処理の対象となります。
マイナスの値が設定された場合、未使用状態でいる時間が原因ではオブジェクトの削除は行われません。
testWhileIdle
は未使用状態のオブジェクトに対してファクトリの
PoolableObjectFactory.validateObject(java.lang.Object) メソッドを使ってチェックを行うかどうかを示します。
有効でないと判断されたオブジェクトはプールから破棄されます。
GenericKeyedObjectPool | 入れ子クラスの概要 | |
static class |
GenericObjectPool.Config
GenericObjectPool のための設定情報を格納したシンプルな "構造体(のようなもの)" です。
|
| フィールドの概要 | |
static int |
DEFAULT_MAX_ACTIVE
同時にプールから取り出すことのできるオブジェクトの最大数のデフォルト値です。 |
static int |
DEFAULT_MAX_IDLE
プール内に保持できる未使用のオブジェクトの最大数のデフォルト値です。 |
static long |
DEFAULT_MAX_WAIT
プールが使い尽されていて "使い尽された時の処理" に
WHEN_EXHAUSTED_BLOCK が設定されている場合の
borrowObject() メソッドが例外を投げるまでの最長待機時間(ミリセカンド)のデフォルト値です。
|
static long |
DEFAULT_MIN_EVICTABLE_IDLE_TIME_MILLIS
getMinEvictableIdleTimeMillis() のデフォルト値です。
|
static int |
DEFAULT_NUM_TESTS_PER_EVICTION_RUN
1度のオブジェクト排除処理でチェックされるオブジェクトの数のデフォルト値です。 |
static boolean |
DEFAULT_TEST_ON_BORROW
オブジェクトの状態を "取り出し時に確認" するかどうかのデフォルトの値です。 |
static boolean |
DEFAULT_TEST_ON_RETURN
オブジェクトの状態を "戻される時に確認" するかどうかのデフォルトの値です。 |
static boolean |
DEFAULT_TEST_WHILE_IDLE
オブジェクトの状態を "未使用の間に確認" するかどうかのデフォルトの値です。 |
static long |
DEFAULT_TIME_BETWEEN_EVICTION_RUNS_MILLIS
"オブジェクト排除処理の実行間隔" のデフォルトの値です。 |
static byte |
DEFAULT_WHEN_EXHAUSTED_ACTION
"使い尽された時の処理"のタイプのデフォルト値です。 |
static byte |
WHEN_EXHAUSTED_BLOCK
"使い尽された時の処理"のタイプ、 プールが尽されている場合 (同時にプールから取り出すことのできるオブジェクトの最大数に達した場合) の処理を示し、 borrowObject() メソッドは新たなオブジェクトが利用できるまでまたは
最大待機時間 に達するまで待機します。
|
static byte |
WHEN_EXHAUSTED_FAIL
"使い尽された時の処理"のタイプ、 プールが尽されている場合 (同時にプールから取り出すことのできるオブジェクトの最大数に達した場合) の処理を示し、 borrowObject() メソッドは失敗し、NoSuchElementException を投げます。
|
static byte |
WHEN_EXHAUSTED_GROW
"使い尽された時の処理"のタイプ、 プールが尽されている場合 (同時にプールから取り出すことのできるオブジェクトの最大数に達した場合) の処理を示し、 borrowObject() メソッドは単純にとにかく新たなオブジェクトを生成します。
|
| コンストラクタの概要 | |
GenericObjectPool(PoolableObjectFactory factory)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
GenericObjectPool.Config config)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
int maxActive)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
boolean testOnBorrow,
boolean testOnReturn)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
int maxIdle)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
int maxIdle,
boolean testOnBorrow,
boolean testOnReturn)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
int maxIdle,
boolean testOnBorrow,
boolean testOnReturn,
long timeBetweenEvictionRunsMillis,
int numTestsPerEvictionRun,
long minEvictableIdleTimeMillis,
boolean testWhileIdle)
指定された値を使用して新たな GenericObjectPool を生成します。 |
|
| メソッドの概要 | |
Object |
borrowObject()
プールからインスタンスを取り出します。 |
void |
clear()
プール内にある使用されていないオブジェクトを削除し、関連するリソースを開放します(オプショナルな処理)。 |
void |
close()
このプールを閉じ、関連する全てのリソースを開放します。 |
int |
getMaxActive()
同時にプールから取り出すことのできるオブジェクトの最大数を返します。 |
int |
getMaxIdle()
プール内に保持できる未使用のオブジェクトの最大数を返します。 |
long |
getMaxWait()
プールが使い尽されていて "使い尽された時の処理" に
WHEN_EXHAUSTED_BLOCK が設定されている場合の
borrowObject() メソッドが例外を投げるまでの最長待機時間(ミリセカンド)を返します。
|
long |
getMinEvictableIdleTimeMillis()
オブジェクトがプール内に未使用状態でいられる時間の最小値を返します。 |
int |
getNumActive()
現在プールから貸し出されているインスタンスの数を返します(オプショナルな処理)。 |
int |
getNumIdle()
現在プール内にある使用されていないインスタンスの数を返します(オプショナルな処理)。 |
int |
getNumTestsPerEvictionRun()
1度のオブジェクト排除処理で排除スレッドにチェックされるオブジェクトの数を返します。 |
boolean |
getTestOnBorrow()
この値が true の場合 インスタンスが borrowObject() メソッドにて取り出される前に
有効かどうかの確認 を行います。
|
boolean |
getTestOnReturn()
この値が true の場合 オブジェクトが returnObject(java.lang.Object) メソッドにて戻される前に
有効かどうかの確認 を行います。
|
boolean |
getTestWhileIdle()
この値が true の場合 オブジェクト排除処理によってオブジェクトに対する 有効かどうかの確認 が実施されます。
|
long |
getTimeBetweenEvictionRunsMillis()
未使用オブジェクト排除処理が次の実行までの間スリープする時間(ミリセカンド)を返します。 |
byte |
getWhenExhaustedAction()
プールが使い尽されている場合(取り出すことのできるオブジェクトが最大数に達した場合)に borrowObject() メソッドが行う処理の種別を返します。
|
void |
returnObject(Object obj)
プールにインスタンスを返します。 |
void |
setConfig(GenericObjectPool.Config conf)
設定情報を登録します。 |
void |
setFactory(PoolableObjectFactory factory)
新たなインスタンスを生成するために使用する factory を設定します(オプショナルな処理)。
|
void |
setMaxActive(int maxActive)
同時にプールから取り出すことのできるオブジェクトの最大数を設定します。 |
void |
setMaxIdle(int maxIdle)
プール内に保持できる未使用のオブジェクトの最大数を設定します。 |
void |
setMaxWait(long maxWait)
プールが使い尽されていて "使い尽された時の処理" に
WHEN_EXHAUSTED_BLOCK が設定されている場合の
borrowObject() メソッドが例外を投げるまでの最長待機時間(ミリセカンド)を設定します。
|
void |
setMinEvictableIdleTimeMillis(long minEvictableIdleTimeMillis)
オブジェクトがプール内に未使用状態でいられる時間の最小値を設定します。 |
void |
setNumTestsPerEvictionRun(int numTestsPerEvictionRun)
1度のオブジェクト排除処理で排除スレッドにチェックされるオブジェクトの数を返します。 |
void |
setTestOnBorrow(boolean testOnBorrow)
この値が true の場合 オブジェクトが borrowObject() メソッドにて取り出される前に
有効かどうかの確認 を行います。
|
void |
setTestOnReturn(boolean testOnReturn)
この値が true の場合 オブジェクトが returnObject(java.lang.Object) メソッドにて戻される前に
有効かどうかの確認 を行います。
|
void |
setTestWhileIdle(boolean testWhileIdle)
この値が true の場合 オブジェクト排除処理によってオブジェクトに対する 有効かどうかの確認 が実施されます。
|
void |
setTimeBetweenEvictionRunsMillis(long timeBetweenEvictionRunsMillis)
未使用オブジェクト排除処理が次の実行までの間スリープする時間(ミリセカンド)を設定します。 |
void |
setWhenExhaustedAction(byte whenExhaustedAction)
プールが使い尽されている場合(取り出すことのできるオブジェクトが最大数に達した場合)に borrowObject() メソッドが行う処理の種別を設定します。
|
| クラス java.lang.Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
public static final int DEFAULT_MAX_ACTIVE
getMaxActive(),
定数フィールド値public static final int DEFAULT_MAX_IDLE
getMaxIdle(),
setMaxIdle(int),
定数フィールド値public static final long DEFAULT_MAX_WAIT
"使い尽された時の処理" に
WHEN_EXHAUSTED_BLOCK が設定されている場合の
borrowObject() メソッドが例外を投げるまでの最長待機時間(ミリセカンド)のデフォルト値です。
getMaxWait(),
setMaxWait(long),
定数フィールド値public static final long DEFAULT_MIN_EVICTABLE_IDLE_TIME_MILLIS
getMinEvictableIdleTimeMillis() のデフォルト値です。
getMinEvictableIdleTimeMillis(),
setMinEvictableIdleTimeMillis(long),
定数フィールド値public static final int DEFAULT_NUM_TESTS_PER_EVICTION_RUN
getNumTestsPerEvictionRun(),
setNumTestsPerEvictionRun(int),
getTimeBetweenEvictionRunsMillis(),
setTimeBetweenEvictionRunsMillis(long),
定数フィールド値public static final boolean DEFAULT_TEST_ON_BORROW
getTestOnBorrow(),
setTestOnBorrow(boolean),
定数フィールド値public static final boolean DEFAULT_TEST_ON_RETURN
getTestOnReturn(),
setTestOnReturn(boolean),
定数フィールド値public static final boolean DEFAULT_TEST_WHILE_IDLE
getTestWhileIdle(),
setTestWhileIdle(boolean),
getTimeBetweenEvictionRunsMillis(),
setTimeBetweenEvictionRunsMillis(long),
定数フィールド値public static final long DEFAULT_TIME_BETWEEN_EVICTION_RUNS_MILLIS
getTimeBetweenEvictionRunsMillis(),
setTimeBetweenEvictionRunsMillis(long),
定数フィールド値public static final byte DEFAULT_WHEN_EXHAUSTED_ACTION
WHEN_EXHAUSTED_BLOCK,
WHEN_EXHAUSTED_FAIL,
WHEN_EXHAUSTED_GROW,
setWhenExhaustedAction(byte),
定数フィールド値public static final byte WHEN_EXHAUSTED_BLOCK
borrowObject() メソッドは新たなオブジェクトが利用できるまでまたは
最大待機時間 に達するまで待機します。
WHEN_EXHAUSTED_FAIL,
WHEN_EXHAUSTED_GROW,
setMaxWait(long),
getMaxWait(),
setWhenExhaustedAction(byte),
定数フィールド値public static final byte WHEN_EXHAUSTED_FAIL
borrowObject() メソッドは失敗し、NoSuchElementException を投げます。
WHEN_EXHAUSTED_BLOCK,
WHEN_EXHAUSTED_GROW,
setWhenExhaustedAction(byte),
定数フィールド値public static final byte WHEN_EXHAUSTED_GROW
borrowObject() メソッドは単純にとにかく新たなオブジェクトを生成します。
WHEN_EXHAUSTED_FAIL,
WHEN_EXHAUSTED_GROW,
setWhenExhaustedAction(byte),
定数フィールド値| コンストラクタの詳細 |
public GenericObjectPool(PoolableObjectFactory factory)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
public GenericObjectPool(PoolableObjectFactory factory,
GenericObjectPool.Config config)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
config - 設定情報を定義する GenericObjectPool.Config ( null を許容しません)
public GenericObjectPool(PoolableObjectFactory factory,
int maxActive)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
maxActive - 同時にプールから取り出すことのできるオブジェクトの最大数(setMaxActive(int) を参照)
public GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
maxActive - 同時にプールから取り出すことのできるオブジェクトの最大数(setMaxActive(int) を参照)
whenExhaustedAction - プールが使い尽されている場合の処理 (getWhenExhaustedAction() を参照)
maxWait - プールが使い尽されていて whenExhaustedAction が WHEN_EXHAUSTED_BLOCK の場合(それ以外の場合、無視されます)の最長待機時間 (getMaxWait() を参照)
public GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
boolean testOnBorrow,
boolean testOnReturn)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
maxActive - 同時にプールから取り出すことのできるオブジェクトの最大数 (setMaxActive(int) を参照)
whenExhaustedAction - プールが使い尽されている場合の処理 (getWhenExhaustedAction() を参照)
maxWait - プールが使い尽されていて whenExhaustedAction が WHEN_EXHAUSTED_BLOCK の場合(それ以外の場合、無視されます)の最長待機時間 (getMaxWait() を参照)
testOnBorrow - オブジェクトの状態を borrowObject() メソッドを使って取り出す前に確認するかどうか (getTestOnBorrow() を参照)
testOnReturn - オブジェクトの状態を returnObject(java.lang.Object) メソッドを使って戻した後に確認するかどうか (getTestOnReturn() を参照)
public GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
int maxIdle)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
maxActive - 同時にプールから取り出すことのできるオブジェクトの最大数(setMaxActive(int) を参照)
whenExhaustedAction - プールが使い尽されている場合の処理 (getWhenExhaustedAction() を参照)
maxWait - プールが使い尽されていて whenExhaustedAction が WHEN_EXHAUSTED_BLOCK の場合(それ以外の場合、無視されます)の最長待機時間 (getMaxWait() を参照)
maxIdle - プール内に保持できる未使用のオブジェクトの最大数 (getMaxIdle() を参照)
public GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
int maxIdle,
boolean testOnBorrow,
boolean testOnReturn)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
maxActive - 同時にプールから取り出すことのできるオブジェクトの最大数(setMaxActive(int) を参照)
whenExhaustedAction - プールが使い尽されている場合の処理 (getWhenExhaustedAction() を参照)
maxWait - プールが使い尽されていて whenExhaustedAction が WHEN_EXHAUSTED_BLOCK の場合(それ以外の場合、無視されます)の最長待機時間 (getMaxWait() を参照)
maxIdle - プール内に保持できる未使用のオブジェクトの最大数 (getMaxIdle() を参照)
testOnBorrow - オブジェクトの状態を borrowObject() メソッドを使って取り出す前に確認するかどうか (getTestOnBorrow() を参照)
testOnReturn - オブジェクトの状態を returnObject(java.lang.Object) メソッドを使って戻した後に確認するかどうか (getTestOnReturn() を参照)
public GenericObjectPool(PoolableObjectFactory factory,
int maxActive,
byte whenExhaustedAction,
long maxWait,
int maxIdle,
boolean testOnBorrow,
boolean testOnReturn,
long timeBetweenEvictionRunsMillis,
int numTestsPerEvictionRun,
long minEvictableIdleTimeMillis,
boolean testWhileIdle)
factory - オブジェクトの生成、確認、破棄を行う際に使用される PoolableObjectFactory( null を許容します)
maxActive - 同時にプールから取り出すことのできるオブジェクトの最大数(setMaxActive(int) を参照)
whenExhaustedAction - プールが使い尽されている場合の処理 (getWhenExhaustedAction() を参照)
maxWait - プールが使い尽されていて whenExhaustedAction が WHEN_EXHAUSTED_BLOCK の場合(それ以外の場合、無視されます)の最長待機時間 (getMaxWait() を参照)
maxIdle - プール内に保持できる未使用のオブジェクトの最大数 (getMaxIdle() を参照)
testOnBorrow - オブジェクトの状態を borrowObject() メソッドを使って取り出す前に確認するかどうか (getTestOnBorrow() を参照)
testOnReturn - オブジェクトの状態を returnObject(java.lang.Object) メソッドを使って戻した後に確認するかどうか (getTestOnReturn() を参照)
timeBetweenEvictionRunsMillis - 未使用オブジェクト排除処理が次の実行までの間スリープする時間(ミリセカンド) (setTimeBetweenEvictionRunsMillis(long) を参照)
numTestsPerEvictionRun - 1度のオブジェクト排除処理でチェックされるオブジェクトの数 (setNumTestsPerEvictionRun(int) を参照)
minEvictableIdleTimeMillis - オブジェクトがプール内に未使用状態でいられる時間の最小値(ミリセカンド) (setMinEvictableIdleTimeMillis(long) を参照)
testWhileIdle - 未使用状態のオブジェクトを未使用オブジェクト排除スレッドでチェックするかどうか (setTestWhileIdle(boolean) を参照)
| メソッドの詳細 |
public Object borrowObject()
throws Exception
ObjectPool の記述: returnObject
または実装クラスやサブインターフェイスのそれと関連するメソッドを使用して
インスタンスをプールに返さなくてはなりません。
プール内のインスタンスが空の場合のこのメソッドの振る舞いは明示されません (各実装クラスで明示されるでしょう)。
ObjectPool 内の borrowObjectBaseObjectPool 内の borrowObjectExceptionpublic void clear()
ObjectPool の記述:
ObjectPool 内の clearBaseObjectPool 内の clear
public void close()
throws Exception
ObjectPool の記述:
ObjectPool 内の closeBaseObjectPool 内の closeExceptionpublic int getMaxActive()
setMaxActive(int)public int getMaxIdle()
setMaxIdle(int)public long getMaxWait()
"使い尽された時の処理" に
WHEN_EXHAUSTED_BLOCK が設定されている場合の
borrowObject() メソッドが例外を投げるまでの最長待機時間(ミリセカンド)を返します。
0より小さな値が設定された場合、borrowObject()
メソッドは無期限に待機します。
borrowObject() method
may block indefinitely.}
setMaxWait(long),
setWhenExhaustedAction(byte),
WHEN_EXHAUSTED_BLOCKpublic long getMinEvictableIdleTimeMillis()
setMinEvictableIdleTimeMillis(long),
setTimeBetweenEvictionRunsMillis(long)public int getNumActive()
ObjectPool の記述:
ObjectPool 内の getNumActiveBaseObjectPool 内の getNumActivepublic int getNumIdle()
ObjectPool の記述: 取得
することのできるオブジェクトの数を対象とします。
ObjectPool 内の getNumIdleBaseObjectPool 内の getNumIdlepublic int getNumTestsPerEvictionRun()
setNumTestsPerEvictionRun(int),
setTimeBetweenEvictionRunsMillis(long)public boolean getTestOnBorrow()
borrowObject() メソッドにて取り出される前に
有効かどうかの確認 を行います。
有効でないと判断された場合、オブジェクトはプールから破棄され、他のオブジェクトが取り出されます。
setTestOnBorrow(boolean)public boolean getTestOnReturn()
returnObject(java.lang.Object) メソッドにて戻される前に
有効かどうかの確認 を行います。
setTestOnReturn(boolean)public boolean getTestWhileIdle()
有効かどうかの確認 が実施されます。
有効でないと判断されたオブジェクトはプールから破棄されます。
setTestWhileIdle(boolean),
setTimeBetweenEvictionRunsMillis(long)public long getTimeBetweenEvictionRunsMillis()
setTimeBetweenEvictionRunsMillis(long)public byte getWhenExhaustedAction()
borrowObject() メソッドが行う処理の種別を返します。
WHEN_EXHAUSTED_BLOCK、WHEN_EXHAUSTED_FAIL、WHEN_EXHAUSTED_GROW のうちののどれか
setWhenExhaustedAction(byte)
public void returnObject(Object obj)
throws Exception
ObjectPool の記述: borrowObject
または実装クラスやサブインターフェイスのそれと関連するメソッドを使用して
取得されたインスタンスでなくてはなりません。
ObjectPool 内の returnObjectBaseObjectPool 内の returnObjectExceptionpublic void setConfig(GenericObjectPool.Config conf)
GenericObjectPool.Config
public void setFactory(PoolableObjectFactory factory)
throws IllegalStateException
ObjectPool の記述: factory を設定します(オプショナルな処理)。
ObjectPool 内の setFactoryBaseObjectPool 内の setFactoryIllegalStateExceptionpublic void setMaxActive(int maxActive)
maxActive - 取り出すことのできるオブジェクトの最大数、
インスタンスの数を制限しない場合にはマイナスの値を設定します
getMaxActive()public void setMaxIdle(int maxIdle)
maxIdle - プール内に保持できる未使用のオブジェクトの最大数
マイナスの値が設定された場合には同時にプール内に保持できるオブジェクトを制限しません
getMaxIdle()public void setMaxWait(long maxWait)
"使い尽された時の処理" に
WHEN_EXHAUSTED_BLOCK が設定されている場合の
borrowObject() メソッドが例外を投げるまでの最長待機時間(ミリセカンド)を設定します。
0より小さな値が設定された場合、borrowObject()
メソッドは無期限に待機します。
borrowObject() method
may block indefinitely.}
getMaxWait(),
setWhenExhaustedAction(byte),
WHEN_EXHAUSTED_BLOCKpublic void setMinEvictableIdleTimeMillis(long minEvictableIdleTimeMillis)
getMinEvictableIdleTimeMillis(),
setTimeBetweenEvictionRunsMillis(long)public void setNumTestsPerEvictionRun(int numTestsPerEvictionRun)
マイナスの値が設定された場合、ceil(BaseObjectPool.numIdle())/abs(getNumTestsPerEvictionRun())
回のチェックを実施します。 例えば -n が設定された場合には、1/n
の未使用オブジェクトが1度のオブジェクト排除処理でチェックされます。
getNumTestsPerEvictionRun(),
setTimeBetweenEvictionRunsMillis(long)public void setTestOnBorrow(boolean testOnBorrow)
borrowObject() メソッドにて取り出される前に
有効かどうかの確認 を行います。
有効でないと判断された場合、オブジェクトはプールから破棄され、他のオブジェクトが取り出されます。
getTestOnBorrow()public void setTestOnReturn(boolean testOnReturn)
returnObject(java.lang.Object) メソッドにて戻される前に
有効かどうかの確認 を行います。
getTestOnReturn()public void setTestWhileIdle(boolean testWhileIdle)
有効かどうかの確認 が実施されます。
有効でないと判断されたオブジェクトはプールから破棄されます。
getTestWhileIdle(),
setTimeBetweenEvictionRunsMillis(long)public void setTimeBetweenEvictionRunsMillis(long timeBetweenEvictionRunsMillis)
getTimeBetweenEvictionRunsMillis()public void setWhenExhaustedAction(byte whenExhaustedAction)
borrowObject() メソッドが行う処理の種別を設定します。
whenExhaustedAction - 処理の種別、
WHEN_EXHAUSTED_BLOCK、WHEN_EXHAUSTED_FAIL、
WHEN_EXHAUSTED_GROW のうちののどれかである必要があります
getWhenExhaustedAction()
|
|||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||