Akka - reenviando el mensaje de "ruptura"

En el oficialakka 2.0.4 docs dice:

Un reinicio de actor reemplaza solo el objeto de actor real; El contenido del buzón no se ve afectado por el reinicio, por lo que el procesamiento de los mensajes se reanudará después de que vuelva el enlace post-reinicio. El mensaje que activó la excepción no se volverá a recibir. Cualquier mensaje enviado a un actor mientras se reinicia se pondrá en cola en su buzón como de costumbre.

Digamos que tengo un mensaje que hizo que mi actor se reinicie. Ya no está en el buzón, por lo que no será procesado por el actor que ocupará su lugar. Si quiero que el actor procese este mensaje (suponiendo que la orden no importa en ese caso), ¿sería una mala idea que el actor se envíe el mensaje al reiniciarse?

Algunos códigos (pseudo) para mostrar lo que quiero decir:

class ResendingActor extends Actor {
  var curMessage: Option[MyMessage] = None
  def receive = {
    case MyMessage(x) => {
      curMessage = Some(MyMessage(x))
      /* processing */
      curMessage = None
    }
  }
  override def preRestart(reason: Throwable, message: Option[Any]) {
    curMessage match {
      case Some(x) => self ! x
      case None => ;
    }
  }
}

De esta manera, el mensaje que no fue procesado por el actor antes de que se reinicie se envía al final de la cola para el nuevo actor.

Así que mi pregunta es: ¿Hay alguna razón por la que no debería estar haciendo esto?

Lo único en lo que puedo pensar es que si el mensaje está mal formado por alguna razón, nunca abandonará el sistema y hará que el actor se reinicie regularmente ...

Respuestas a la pregunta(1)

Su respuesta a la pregunta