Очень важно знать, как система может вести себя в случае сбоя определенного субъекта - как выполняется восстановление, правильно ли получены снимки и т. Д. Удивительно, но я не нашел никаких советов по этому поводу в документы
Подход, который я видел в некоторых примерах, заключается в том, чтобы иметь специальное сообщение Fail
и позволить актеру выдавать Exception
в это сообщение.
class MyActor extends Actor {
override def receive =
...
case Fail => throw new Exception("kaboom")
}
Я надеюсь никогда не использовать его, поскольку он смешивает производственный код и тестовый код и, вероятно, сгенерирует несколько разумных WTF у ничего не подозревающих читателей.
Как мне заставить произвольного актера проиграть должным образом?
Спасибо