Maison > Java > javaDidacticiel > le corps du texte

Comment régler l'heure dans la minuterie Java

小老鼠
Libérer: 2023-12-26 16:31:37
original
1612 Les gens l'ont consulté

Méthode de configuration : 1. Utilisez la méthode d'exécution de TimerTask pour définir les tâches à exécuter de manière planifiée ; 2. Grâce à la méthode de planification de Timer, vous pouvez définir l'heure de début, l'intervalle, etc. de la minuterie ; exécuté immédiatement après le démarrage du programme. Ensuite, exécutez-le toutes les 1000 millisecondes et continuez jusqu'à ce que la minuterie soit annulée.

Comment régler l'heure dans la minuterie Java

Le système d'exploitation de ce tutoriel : système Windows 10, ordinateur Dell G3.

En Java, vous pouvez utiliser les classes Timer et TimerTask pour implémenter des tâches planifiées. Voici un exemple simple qui montre comment utiliser Timer et TimerTask pour définir une minuterie et exécuter des tâches :

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");
    }
}
Copier après la connexion

Dans l'exemple ci-dessus, la méthode run de TimerTask définit une tâche à exécuter régulièrement. Grâce à la méthode de planification de la minuterie, vous pouvez définir l'heure de début, l'intervalle, etc. de la minuterie. Dans cet exemple, la tâche sera exécutée immédiatement après le démarrage du programme, puis toutes les 1 000 millisecondes, et se poursuivra jusqu'à ce que le minuteur soit annulé.

Veuillez noter que la classe Timer est obsolète en Java. Il est recommandé d'utiliser ScheduledExecutorService pour effectuer des tâches planifiées car elle fournit des fonctions de planification plus puissantes et flexibles. Voici un exemple d'utilisation de 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");
    }
}
Copier après la connexion

Cet exemple utilise la méthode planningAtFixedRate de ScheduledExecutorService, dont les paramètres incluent l'objet de tâche, le temps de retard initial, l'intervalle de temps et l'unité de temps. Dans cet exemple, la tâche sera exécutée immédiatement après le démarrage du programme, puis toutes les 1 000 millisecondes, et se poursuivra jusqu'à ce que le minuteur soit désactivé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal