Ich arbeite an Akka-Schauspielern (JAVA) und habe kürzlich erfahren, dass es drei Möglichkeiten gibt (vielleicht mehr zu wissen), dass ein Schauspieler existiert.
Senden einer Nachricht zum Identifizieren :
%Vor%resolveOne-Methode :
%Vor%DeatchWatch : Erstellen Sie einen anderen Actor-Aufruf getContext (). Watch (ActorRef von actorToWatch); und prüfen Sie, ob die Nachricht Beendet empfangen wurde. Dies kann nur für bereits erstellte Akteure verwendet werden.
1,2 sagt die Existenz von Schauspieler und 3 Monitoren. Ich würde gerne die Anwendungsfälle dieser drei und ihre Auswirkungen auf die Briefkästen und Funktionalitäten von Schauspielern kennen, so dass ich den Typ auswählen kann, der für meine Anwendung geeignet ist.
Ist die Überprüfung der Existenz eines Schauspielers eine gute Übung? Wenn nicht warum? .
Nun, es gibt nur einen Weg zu wissen, ob ein Actor zu einem bestimmten Zeitpunkt in der Vergangenheit existierte: wenn Sie eine Nachricht von ihm erhalten. All das sind nur Variationen zu diesem Thema.
Wenn Sie den ActorRef haben, können Sie DeathWatch verwenden, um über die Beendigung des ActorRef benachrichtigt zu werden. Wenn Sie die Nachricht "Abgeschlossen" noch nicht erhalten haben, heißt das nicht, dass der Schauspieler noch am Leben ist: Der Terminated könnte schon auf dem Weg sein.
Denken Sie an Schauspieler als Menschen, die nur per E-Mail kommunizieren können. Diese Analogie funktioniert sehr gut für die Semantik ihrer Interaktion.