2016-07-20 5 views
0

Ich aktualisiere mein Projekt auf Play 2.5. In der vorherigen Version verwendete ich den folgenden Code Aufgabe über Akka zu planen:Abspielen 2.5 akka.actor.ActorSystem isTerminated Methode veraltet

private ActorSystem actorSystem = Play.current().injector().instanceOf(ActorSystem.class); 

    private void scheduleUpdate() { 
     if (actorSystem.isTerminated()) { 
      return; 
     } 
     //run schedule code 
    } 

Aber isTerminated Methode (Rückkehr boolean) ist veraltet und ich bin whenTerminated stattdessen verwenden ermutigt. Ich bin mir jedoch nicht sicher, wie ich diesen Code hier richtig umgestalten soll, denn wenn Abgeschlossen scheint, hat er ganz andere Funktionen. Wenn mir jemand dazu einen Rat gibt, wäre das sehr hilfreich.

Antwort

1

ActorSystem.whenTerminated gibt eine Future<Terminated> die Datenstruktur eine Scala ist ähnlich wie CompletableFuture, die in Java 8 hinzugefügt wurde Sie abfragen können, wenn es .isCompleted() durch das Verfahren abgeschlossen ist Ihre alte Logik zu imitieren.