ツッコミシステム修正。
ツッコミシステムの上記のバグを修正しました。
// ObjectPoolインスタンスを生成します。 // 最大コネクション数。 int MAX_ACTIVE = 20; // コネクションプール最大時の待機時間( 10 秒)。 int MAX_WAIT = 10 * 1000; // コネクションプール内に保持できる未使用コネクションの数。 int MAX_IDLE = 20; // 排除スレッドが排除処理を実行するまでの時間。 int TIME_BETWEEN_EVICTION_RUNS_MILLIS = 0; // 1度のオブジェクト排除処理でチェックされるオブジェクトの数。 int NUM_TESTS_PER_EVICTION_RUN = 1; // 未使用状態でいられる時間( 2 時間)。 int MIN_EVICTABLE_IDLE_TIME_MILLIS = 2 * 60 * 60 * 1000; //汎用的なオブジェクトプールを作成する GenericObjectPool pool = new GenericObjectPool ( null , MAX_ACTIVE , GenericObjectPool.WHEN_EXHAUSTED_BLOCK , MAX_WAIT , MAX_IDLE , false , false , TIME_BETWEEN_EVICTION_RUNS_MILLIS , NUM_TESTS_PER_EVICTION_RUN , MIN_EVICTABLE_IDLE_TIME_MILLIS , false );
具体的には、これまで StackObjectPool を使っていたところを、 GenericObjectPool に変更して、 MIN_EVICTABLE_IDLE_TIME_MILLIS のとこの引数で未使用時間を2時間に設定。これでうまくいくか、明日の朝起きたらアクセスしてみよう。
つかサンプル少なくて結構難しい……。ってゆーかソース落として解析しちゃえばいいのか……。
>追記。
よく考えるとこれじゃダメかも。"MySQL closes connections after 8 hours of inactivity."だから、アイドル時間2時間だと……。ツッコミシステムならいいけど、 Java プログラミング辞書じゃなー。アイドル時間 5 秒にするかな。
>さらに追記。
全然直ってない(汗)。
「貸すときのチェック」ってのを加えるか……。
>最後の追記。
修正しました。