I find the Akka documentation a bit confusing with respect to this, as the 
API documentation for ActorRef indicates that it is actually intended for 
message passing, but elsewere in the doc 
(http://doc.akka.io/docs/akka/snapshot/general/addressing.html), it states: 
"You can create an actor, terminate it, and then create a new actor with 
the same actor path. The newly created actor is a new incarnation of the 
actor. It is not the same actor. An actor reference to the old incarnation 
is not valid for the new incarnation. Messages sent to the old actor 
reference will not be delivered to the new incarnation even though they 
have the same path." -which means that holding an actorref in your code and 
assuming it is valid is a wrong assumption. If you hold an actorref in your 
code you should monitor it by DeathWatch, which leads to complex 
statehandling in your actor related to the watched actor's lifecycle. Your 
actors monitoring the lifecycle of other actors may or may not be the same 
ones responsible for recreating them in case of termination. So how should 
your actors be notified of the reincarnation of an actor with a new 
actorref?. I believe using actorSelection is a better idea, isolating the 
responsibility of death watch to the actor actually being responsible for 
the reincarnation.



On Tuesday, April 22, 2014 3:07:15 PM UTC+2, Chanan Braunstein wrote:
>
> There could be a few ways you can get the ActorRefs X,Y,Z to "someactor" 
> you could, for example, create a message from SomeActor to the parent of 
> X,Y,Z (in this example it would /users) and ask it to return the ActorRefs. 
> Then you would save them in someactor and use them to talk to X,Y,Z.
>
> I ended up going a different route, and decided not to save the ActoRefs 
> in "someactor". Since in my case /users is a singleton I send it messages 
> to route to the children. It uses its getChild and children functions to 
> route to one or more actors under it as needed.
>

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to