“重试”逻辑的设计模式失败了?
2022-08-31 14:22:00
我正在编写一些重新连接逻辑,以定期尝试与已关闭的远程终结点建立连接。从本质上讲,代码如下所示:
public void establishConnection() {
try {
this.connection = newConnection();
} catch (IOException e) {
// connection failed, try again.
try { Thread.sleep(1000); } catch (InterruptedException e) {};
establishConnection();
}
}
我已经多次使用类似于上述的代码解决了这个一般问题,但我对结果感到非常满意。是否有设计用于处理此问题的设计模式?