ダウンしたリモートエンドポイントへの接続を定期的に確立しようとする再接続ロジックを作成しています。基本的に、コードは次のようになります。
public void establishConnection() {
try {
this.connection = newConnection();
} catch (IOException e) {
// connection failed, try again.
try { Thread.sleep(1000); } catch (InterruptedException e) {};
establishConnection();
}
}
私はこの一般的な問題を上記と同様のコードで何度も解決しましたが、結果にはほとんど満足できません。この問題に対処するために設計されたデザインパターンはありますか?