Heim  >  Artikel  >  Java  >  So stellen Sie die Zeit im Java-Timer ein

So stellen Sie die Zeit im Java-Timer ein

小老鼠
小老鼠Original
2023-12-26 16:31:371592Durchsuche

Einstellungsmethode: 1. Verwenden Sie die Ausführungsmethode von TimerTask, um Aufgaben für die geplante Ausführung zu definieren. 2. Über die Zeitplanmethode von Timer können Sie die Startzeit, das Intervall usw. des Timers festlegen wird sofort nach dem Start des Programms ausgeführt. Führen Sie es dann alle 1000 Millisekunden aus und fahren Sie fort, bis der Timer abgebrochen wird.

So stellen Sie die Zeit im Java-Timer ein

Das Betriebssystem dieses Tutorials: Windows 10-System, Dell G3-Computer.

In Java können Sie die Timer-Klasse und die TimerTask-Klasse verwenden, um geplante Aufgaben zu implementieren. Das Folgende ist ein einfaches Beispiel, das zeigt, wie man Timer und TimerTask verwendet, um einen Timer einzustellen und Aufgaben auszuführen:

import java.util.Timer;
import java.util.TimerTask;
public class TimerExample {
    public static void main(String[] args) {
        // 创建定时器对象
        Timer timer = new Timer();
        // 创建定时任务对象
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                // 在此处编写定时执行的任务
                System.out.println("Task executed at: " + System.currentTimeMillis());
            }
        };
        // 设置定时器,延迟0毫秒后开始执行任务,每隔1000毫秒执行一次
        timer.schedule(task, 0, 1000);
        // 等待一段时间后,取消定时任务
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 取消定时任务
        timer.cancel();
        System.out.println("Timer canceled");
    }
}

Im obigen Beispiel definiert die run-Methode von TimerTask eine Aufgabe, die regelmäßig ausgeführt werden soll. Mit der Zeitplanmethode des Timers können Sie die Startzeit, das Intervall usw. des Timers festlegen. In diesem Beispiel wird die Aufgabe unmittelbar nach dem Programmstart ausgeführt, dann alle 1000 Millisekunden und so lange fortgesetzt, bis der Timer abgebrochen wird.

Bitte beachten Sie, dass die Timer-Klasse in Java veraltet ist. Es wird empfohlen, ScheduledExecutorService zum Ausführen geplanter Aufgaben zu verwenden, da sie leistungsfähigere und flexiblere Planungsfunktionen bietet. Das Folgende ist ein Beispiel für die Verwendung von ScheduledExecutorService:

import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class ScheduledExecutorExample {
    public static void main(String[] args) {
        // 创建ScheduledExecutorService对象
        ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
        // 创建定时任务对象
        Runnable task = () -> {
            // 在此处编写定时执行的任务
            System.out.println("Task executed at: " + System.currentTimeMillis());
        };
        // 设置定时器,延迟0毫秒后开始执行任务,每隔1000毫秒执行一次
        scheduler.scheduleAtFixedRate(task, 0, 1000, TimeUnit.MILLISECONDS);
        // 等待一段时间后,关闭定时器
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 关闭定时器
        scheduler.shutdown();
        System.out.println("Scheduler shutdown");
    }
}

In diesem Beispiel wird die Methode „schedulAtFixedRate“ von ScheduledExecutorService verwendet, zu deren Parametern das Aufgabenobjekt, die anfängliche Verzögerungszeit, die Intervallzeit und die Zeiteinheit gehören. In diesem Beispiel wird die Aufgabe unmittelbar nach dem Programmstart ausgeführt, dann alle 1000 Millisekunden und so lange fortgesetzt, bis der Timer ausgeschaltet wird.

Das obige ist der detaillierte Inhalt vonSo stellen Sie die Zeit im Java-Timer ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn