Przetwarzanie przyrostowe w akka actor

Mam aktorów, którzy muszą wykonywać bardzo długie i kosztowne obliczeniowo prace, ale samo obliczanie można wykonywać stopniowo. Tak więc, mimo że pełne obliczenie samo w sobie zajmuje wiele godzin, wyniki pośrednie są naprawdę bardzo użyteczne i chciałbym móc odpowiedzieć na ich prośby. Oto pseudo kod tego, co chcę zrobić:

var intermediateResult = ...
loop {
     while (mailbox.isEmpty && computationNotFinished)
       intermediateResult = computationStep(intermediateResult)


     receive {
         case GetCurrentResult => sender ! intermediateResult
         ...other messages...
     }
 }

questionAnswers(4)

yourAnswerToTheQuestion