Akka スーパーバイザー戦略では、スローされた例外の種類に応じてカスタム動作が可能になるため、スーパーバイザーは、失敗したアクターを停止、再起動、再開するか、エラーをその親にエスカレートするかを選択できます。アクターが CircuitBreakerOpenException で失敗し、アクターを再起動する必要がある場合に、カスタム スーパーバイザー戦略を構築しようとしています。再起動戦略を選択した場合、アクターはすぐに再起動されますが、resetTimeout 間隔内にすぐに再び失敗するため意味がありません。したがって、正しい動作は、XXX 秒待ってから Restart ディレクティブを使用することです。しかし、この振る舞いは、アクターの監督戦略の観点からは表現できません。
そのような動作を実装する正しい方法は何ですか? もちろん、子アクターの実装に try/catch ハンドルを追加することもできますが、これはアクターの監視の概念に反します。