2017-04-12 1 views
0

Disons que vous avez une classe d'acteur:Comment obtenir un ActorRef de « ce »

class MyActor extends Actor { } 

Et quelque part dans MyActor, vous souhaitez passer à un autre acteur. Mais, vous avez besoin de "ceci" en tant que ActorRef. Puisque "this" est de type Actor, il ne peut pas être passé là où ActorRef est requis. Donc la question est, comment un acteur ("this") peut-il obtenir une référence à lui-même en tant que ActorRef? Est-ce même possible, ou suis-je quelque chose de totalement malentendu ...

Répondre

5

d'un acteur, vous pouvez utiliser self pour obtenir le ActorRef

+1

Vous trouverez plus de détails sur cette question aussi: http://stackoverflow.com/questions/19887419/how-can-i-get-the-name-of -an-akka-acteur-de-dans-l'-acteur-lui-même –

1

Si vous connaissez le chemin d'un acteur et que vous voulez connaître son ActorRef vous peut l'obtenir. Il vous suffit de créer un acteur en utilisant la sélection de l'acteur, puis d'envoyer un message Identity(none) à cet acteur. Il enverra son ActorRef en réponse.

Vous trouvez une explication plus détaillée: https://doc.akka.io/docs/akka/snapshot/actors.html