Package pi.event
Class PeriodicTaskExecutor
java.lang.Object
pi.event.PeriodicTaskExecutor
- All Implemented Interfaces:
FrameUpdateListener
Führt Aufgaben regelmäßig aus.
- Author:
- Niklas Keller, Josef Friedrich
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionPeriodicTaskExecutor(double interval, int repetitions, PeriodicTask task, PeriodicTask finalTask, FrameUpdateListenerRegistration container) Erzeugt eine neue periodische Aufgabe, die eine Referenz auf den übergeordneten Behälter verlangt, in dem diese periodische Aufgabe angemeldet wurde.PeriodicTaskExecutor(double interval, PeriodicTask task) Erzeugt eine neue periodische Aufgabe ohne eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde.PeriodicTaskExecutor(double interval, PeriodicTask task, FrameUpdateListenerRegistration container) Erzeugt eine neue periodische Aufgabe, die eine Referenz auf den übergeordneten Behälter verlangt, in dem diese periodische Aufgabe angemeldet wurde. -
Method Summary
Modifier and TypeMethodDescriptionGibt die Aufgabe, die als letzte Aufgabe ausgeführt wird, zurück.finalTask(PeriodicTask finalTask) Setzt die Aufgabe, die als letzte Aufgabe ausgeführt wird.doubleinterval()Gibt das aktuelle Intervall der periodischen Aufgabe aus.voidpause()Pausiert die periodische Ausführung der Aufgabe.intGibt die Anzahl an Wiederholungen der Aufgabe zurück.repetitions(int repetitions) Setzt die Anzahl an Wiederholungen der Aufgabe.voidresume()Führt die periodische Aufgabe fort.setInterval(double interval) Setzt das Intervall dieses periodischen Tasks neu.task()Gibt die Aufgabe, die regelmäßig ausgeführt wird, zurück.task(PeriodicTask task) Setzt die Aufgabe, die regelmäßig ausgeführt wird.voidtoggle()Schaltet je nach Zustand zwischen den Zuständen pausiert und nicht pausiert hin und her.voidStoppt die periodische Ausführung.voidStoppt die periodische Ausführung und wirft dabei keine Ausnahme.
-
Field Details
-
isPaused
public boolean isPausedGibt an, ob die Aufgabe pausiert ist.
-
-
Constructor Details
-
PeriodicTaskExecutor
public PeriodicTaskExecutor(double interval, int repetitions, PeriodicTask task, PeriodicTask finalTask, FrameUpdateListenerRegistration container) Erzeugt eine neue periodische Aufgabe, die eine Referenz auf den übergeordneten Behälter verlangt, in dem diese periodische Aufgabe angemeldet wurde. Die Ausführung wird nach einer bestimmten Anzahl an Wiederholungen unterbrochen und als letzte Wiederholungen eine abschließende Aufgabe ausgeführt.- Parameters:
interval- Die Zeit zwischen den Ausführungen in Sekunden.repetitions- Die Anzahl an Wiederholungen der Aufgabe. Gibt an, wie oft die Aufgabe wiederholt wird. Ist dieses Attribut auf-1gesetzt, so wird die Aufgabe unendlich oft wiederholt.task- Die Aufgabe, die regelmäßig ausgeführt wird.finalTask- Die Aufgabe, die als letzte Aufgabe ausgeführt wird.container- Eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde. Diese Referenz wird dazu verwendet, um die periodische Ausführung abzumelden und dadurch zu stoppen.
-
PeriodicTaskExecutor
public PeriodicTaskExecutor(double interval, PeriodicTask task, FrameUpdateListenerRegistration container) Erzeugt eine neue periodische Aufgabe, die eine Referenz auf den übergeordneten Behälter verlangt, in dem diese periodische Aufgabe angemeldet wurde.- Parameters:
interval- Die Zeit zwischen den Ausführungen in Sekunden.task- Die Aufgabe, die regelmäßig ausgeführt wird.container- Eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde. Diese Referenz wird dazu verwendet, um die periodische Ausführung abzumelden und dadurch zu stoppen.
-
PeriodicTaskExecutor
Erzeugt eine neue periodische Aufgabe ohne eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde.- Parameters:
interval- Die Zeit zwischen den Ausführungen in Sekunden.task- Die Aufgabe, die regelmäßig ausgeführt wird. Ein Objekt vom TypRunnable, das eine ausführbare Methode enthält oder ein Lambda-Ausdruck.
-
-
Method Details
-
setInterval
Setzt das Intervall dieses periodischen Tasks neu.- Parameters:
interval- Das neue Intervall. Zeit zwischen den Ausführungen in Sekunden. Muss größer als 0 sein.- Returns:
- Eine Instanz dieses Objekts, damit das Objekt über verkettete Setter konfiguriert werden kann.
-
interval
Gibt das aktuelle Intervall der periodischen Aufgabe aus.- Returns:
- Das aktuelle Intervall. Die Zeit zwischen den Ausführungen in Sekunden.
-
repetitions
Setzt die Anzahl an Wiederholungen der Aufgabe.- Parameters:
repetitions- Die Anzahl an Wiederholungen der Aufgabe.- Returns:
- Eine Instanz dieses Objekts, damit das Objekt über verkettete Setter konfiguriert werden kann.
-
repetitions
Gibt die Anzahl an Wiederholungen der Aufgabe zurück.- Returns:
- Die Anzahl an Wiederholungen der Aufgabe.
-
task
Setzt die Aufgabe, die regelmäßig ausgeführt wird.- Parameters:
task- Die Aufgabe, die regelmäßig ausgeführt wird.- Returns:
- Eine Instanz dieses Objekts, damit das Objekt über verkettete Setter konfiguriert werden kann.
-
task
Gibt die Aufgabe, die regelmäßig ausgeführt wird, zurück.- Returns:
- Die Aufgabe, die regelmäßig ausgeführt wird.
-
finalTask
Setzt die Aufgabe, die als letzte Aufgabe ausgeführt wird.- Parameters:
finalTask- Die Aufgabe, die als letzte Aufgabe ausgeführt wird.- Returns:
- Eine Instanz dieses Objekts, damit das Objekt über verkettete Setter konfiguriert werden kann.
-
finalTask
Gibt die Aufgabe, die als letzte Aufgabe ausgeführt wird, zurück.- Returns:
- Die Aufgabe, die als letzte Aufgabe ausgeführt wird.
-
pause
public void pause()Pausiert die periodische Ausführung der Aufgabe. -
resume
public void resume()Führt die periodische Aufgabe fort. -
toggle
public void toggle()Schaltet je nach Zustand zwischen den Zuständen pausiert und nicht pausiert hin und her. -
unregister
public void unregister()Stoppt die periodische Ausführung. Sie kann dann nicht mehr neu gestartet werden.- Throws:
RuntimeException- Falls keincontainergesetzt ist.
-
unregisterSafe
public void unregisterSafe()Stoppt die periodische Ausführung und wirft dabei keine Ausnahme. Sie kann dann nicht mehr neu gestartet werden.
-