7

アプリケーションの一部にプーリングを実装しようとしています。close()Commons Pool ライブラリを使用したいのですが、動作が少し気になります。close()javadoc とソース コードを見ると、メソッドが呼び出されたときにプールで作成されたオブジェクトが破棄されるかどうかは明確ではないようです。私が見る限り、プールでアイドル状態のオブジェクトのみが破棄されます。使用されていて、まだ返されていないオブジェクトには触れられません。

ここで何かを見逃しましたか?プールが閉じられたときに、すべてのオブジェクトが正しく破棄されるようにしたいと考えています。

誰もこれを以前に使用していて、それがどのように機能するかについて考えを持っていますか?

4

2 に答える 2

3

一般的に言えば (プーリング ライブラリに関係なく)、使用中のオブジェクトを破棄するのは安全ではありません。これを行うと、例外が発生する可能性が高くなります。クリーン クローズを保証する場合は、すべてのオブジェクトがプールに返されたことを確認する必要があります。

すべてのオブジェクトがプールに戻される前に終了する理由はありますか?

于 2009-12-17T15:43:50.253 に答える