2011-11-02 20 views
6

Solo leyendo las muestras de Akka, no entiendo cómo se define self.reply? Por lo que puedo ver, self reply se usa dentro de los bloques receive para responder a un mensaje. Pero en cuanto a reply es un método de self, entonces self es qué?¿Qué es el "yo" en Akka?

PD: BTW, ¿me puede recomendar un buen artículo de inicio rápido sobre aspectos básicos de Akka y actores remotos con Scala? Le agradecería si pudiera publicar aquí un enlace como comentario. En este momento estoy leyendo this.

Respuesta

18

self es una referencia a la instancia ActorRef que contiene ese actor.

Cuando crea un nuevo actor en Akka, el método actorOf[class] devuelve una instancia de ActorRef, no de su implementación real de actor, el actor está oculto. Este ActorRef es lo que utilizas para interactuar con el Actor. Entonces, el self puede ser utilizado por el propio actor para obtener esta referencia.

Por ejemplo, si tu actor quería enviar un mensaje a sí mismo, lo haría

self ! Message