Java での時間制限のある接続チェック
目標は、指定された時間内にデータベースへの接続が失敗した場合にタイマーを確立することです。ウィンドウ、例外を開始します。
タイマー設定
Java でタイマーを開始するには:
import java.util.Timer; ... Timer timer = new Timer();
1 回限りのタスクの場合:
timer.schedule(new TimerTask() { @Override public void run() { // Database connection code } }, 2*60*1000);
定期的に繰り返すタスクの場合:
timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { // Database connection code } }, 2*60*1000, 2*60*1000);
時間制限あり実行
タスクの実行を特定の時間枠に制限するには:
ExecutorService service = Executors.newSingleThreadExecutor(); try { Runnable r = new Runnable() { @Override public void run() { // Database connection task } }; Future<?> f = service.submit(r); f.get(2, TimeUnit.MINUTES); // Attempt the task for two minutes } catch (InterruptedException) { // Interrupted while waiting } catch (TimeoutException) { // Took longer than two minutes } catch (ExecutionException) { // Exception within the task } finally { service.shutdown(); }
このアプローチでは、タスクが正常に完了するか、時間を超過したために例外がスローされることが保証されます。限界。タスクは制限時間後も実行を継続しますが、最終的には接続またはネットワークのタイムアウトにより終了することに注意してください。
以上がJava で時間制限のあるデータベース接続チェックを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。