一个子Actor中的函数生成的异常需要被子Actor显式地捕获和抛出,还是由监督策略指令(升级)在后台处理并传播生成的异常到监督Actor中?请注意保留HTML标记。
我的监督策略:
我的监督策略:
override val supervisorStrategy =
OneForOneStrategy(maxNrOfRetries = 5, withinTimeRange = 5 minute) {
case _: ArithmeticException ⇒ Resume
case _: NullPointerException ⇒ Restart
case _: IllegalArgumentException ⇒ Stop
case _: IOException ⇒ Stop
case _: Exception ⇒ Restart
}
在子Actor中的某些操作可能会抛出IOException异常。我应该在子Actor中放置try catch块来捕获它然后再抛出,使得父Actor可以捕获吗?或者Akka会在幕后处理它?