Ich habe eine Verpflichtung, so dass mein Programm annehmen wird für eine bestimmte Zeit zu laufen. Wie könnte ich einen Timer in Java so beibehalten, dass das Programm nur für nur 30 Minuten von der Programmausführung Startzeit läuft.Aufrechterhaltung einen Timer in Java
Antwort
Versuchen Sie, diese (wahrscheinlich im Hauptverfahren):
Timer t = new Timer();
t.schedule(new TimerTask() {
@Override
public void run() {
System.exit(0);
}
}, 30*60000);
können Sie java.util.Timer
verwenden, um die Zeit zu planen, wenn Ihr Programm stoppen muss. Wenn diese Zeit auftritt, müssen Sie dann mit Ihrem Haupt-Thread kommunizieren, dass das Programm nicht mehr ausgeführt werden soll (es sei denn, Sie möchten einfach System.exit
anrufen).
Danke.Dies funktioniert, aber ich nedd die tatsächlichen Minuten vergangen von der Startzeit, da ich andere Prüfungen alonwith die verstrichene Zeit durchführen müssen.Wenn andere Bedingungen und die verstrichene Zeit größer ist als die angegebenen Minuten, dann kann ich das Programm beenden. –
Wenn Sie eine Java-Version 1.5 oder höher verwenden, empfehle ich den Rahmen Testamentsvollstrecker verwenden. Insbesondere wird ein ScheduledExecutorService
,
Executors.newSingleThreadScheduledExecutor().schedule(new Runnable(){
@Override
public void run(){
System.exit(0);
}
}, 30, TimeUnit.MINUTES);
Siehe auch Java Timer vs ExecutorService?.
- 1. Wie setze ich einen Timer in Java?
- 2. Start Timer in Java
- 3. Timer in Java Thread
- 4. Timer Genauigkeit in Java
- 5. Java gesetzt Timer anhalten und zurücksetzen Timer
- 6. Java Swing Timer Probleme
- 7. Java-Warteschlangen-Timer
- 8. java: Einfacher Timer verwenden
- 9. Aufrechterhaltung eines Schlüsselindex konstant
- 10. Java Swing Timer
- 11. Java Timer funktioniert nicht
- 12. java gregorian Kalender Timer
- 13. Java Timer Diashow
- 14. Aufrechterhaltung der Modularität in Main()?
- 15. Aufrechterhaltung invariant in Prim-Algorithmus
- 16. Java: Timer und Thread erstellt
- 17. setzen einen jquery Timer
- 18. Bewegung durch einen Timer
- 19. Wie mache ich Timer in Java?
- 20. Java - Benutzereingabe threadin mit Timer
- 21. Timer & TimerTask versus Thread + Schlaf in Java
- 22. Timer vs Thread-Grundelement in Java
- 23. Wie Countdown-Timer in Java zu machen?
- 24. Java Swing Timer und ActionEvent
- 25. Erstellen Sie benutzerdefinierte Java-Timer von C++ Timer
- 26. Wie erstelle ich einen Timer
- 27. Wie erstelle ich einen Timer in WPF?
- 28. Wie verwende ich einen Timer in Android?
- 29. Stock Balance Aufrechterhaltung in Schienen Anwendung
- 30. Aufrechterhaltung Sitzung von Server-Anwendung in AngularJS
Thanks.This funktioniert, aber ich brauche die tatsächlichen Minuten von der Startzeit vergangen, als ich zusammen mit den verstrichenen time.If anderen Bedingungen andere Kontrollen durchführen muß und die verstrichene Zeit größer als die angegebenen Minuten, dann kann ich das Programm beenden. –
Sie können die Startzeit des Programms speichern, indem Sie am Start Ihres Programms 'startTime = System.currentTimeMillis()' eingeben. Um herauszufinden, wie lange das Programm bereits läuft, tun '(System.currentTimeMillis() - Startzeit)/60000' – Richante
Wenn Sie wollen (sagen wir) jede Minute überprüfen, ob das Programm zu beenden, können Sie den angezeigten Code ändern - ersetzen '30 * 60000' mit' 60000, 60000' (Aufgabe jede Minute wiederholen), und dann eine 'if'-Anweisung in 'run()', die die Bedingung überprüft, die ich im Kommentar angegeben habe, und was auch immer Sie wollen. 'startTime' sollte ein' final long' sein, das im selben Umfang wie 't' ist. – Richante