Estoy empezando a aprender Akka migrando una aplicación Java SE existente a él. Estoy usando Akka 2.0.3.Enviar un PoisonPill a un actor en Java
En un momento dado necesito enviar un PoisonPill a través de la cola de mensajes para detener a los actores. Mi actor se crea una instancia de este modo:
ActorRef myActor = actorSystem.actorOf(new Props(MyActor.class), "myActor");
a la que intento enviar el PoisonPill:
myActor.tell(PoisonPill.getInstance());
pero me da el siguiente error de compilación:
'tell(java.lang.Object)' in 'akka.actor.ActorRef' cannot be applied to '(akka.actor.PoisonPill$)'
¿Qué estoy haciendo mal? Estoy ejecutando Java 1.6.0_26 en Idea (que también estoy aprendiendo después de toda una vida en Eclipse).
Editar:
También he intentado este enfoque, que se encuentra en la documentación, pero me sale el mismo error del compilador y la idea me advierte que la clase de Actores está en desuso.
import static akka.actor.Actors.*;
extractionActor.tell(poisonPill());
+1 para el título de la pregunta. No tengo idea de qué se trata, pero se parece un poco a una escena de una película de suspenso o de terror :-) – Ridcully
Eso es muy cierto, ¡nunca lo había leído así! Créame, en realidad soy una persona muy agradable en la vida real. – Rich