2016-10-16 6 views
0

によってスローされながらUnreturnedConnectionTimeoutは、フロー制御を破壊しません。プロパティunreturnedConnectionTimeoutで構成されている:C3P0私は、次のコードを持っていると仮定するとC3P0

unreturnedConnectionTimeout=300 

私はプールに戻らなかった接続を持っている場合は、C3P0は言う - 「のjava.lang.Exception:DEBUG ONLY:延滞リソースチェックアウトスタックトレース」 。

この例外は、コードスニペットのcatchブロックで検出されます。私のアプリケーションをデバッグすることによって、答えはNOと思われます。 その例外を検出する方法はありますか?

答えて

1

いいえ、あなたは例外をキャッチできませんでした。あなたが見ている「例外」は投げられませんでした。それはdebugUnreturnedConnectionStackTracesによって生成され、スタックトレースをダンプするように要求され、Connectionにリークしたコードパスを表示します。

unreturnedConnectionTimeoutclose()に漏れている(およびリークを修正するのに役立つ)接続。これらの接続は、スタック内またはtry/catchブロック内でアクセスできなくなるはずです。 unreturnedConnectionTimeoutを小さすぎる値に設定すると、アプリケーションがそれを使用している間に設定によって接続が閉じられるので、アプリケーションが閉じられた後でアプリケーションが接続を使用しようとすると、通常の例外が表示されます。

関連する問題