Maison > Java > javaDidacticiel > le corps du texte

Comment pouvons-nous implémenter un thread de minuterie en Java ?

WBOY
Libérer: 2023-08-30 14:49:04
avant
1057 Les gens l'ont consulté

La classe

Comment pouvons-nous implémenter un thread de minuterie en Java ?

Timer planifie les tâches à exécuter une ou plusieurs fois à un moment donné. Il peut également s’exécuter en arrière-plan en tant que thread démon. Pour associer un Timer à un thread démon, utilisez un constructeur avec une valeur Boolean. Les minuteries planifient les tâches avec un délai fixe et un taux fixe. Sous délai fixe, si une exécution est retardée par le système GC, les autres exécutions sont également retardées, et chaque exécution est retardée correspondant à l'exécution précédente. À taux fixe, si une exécution est retardée par System GC, 2 à 3 exécutions se produisent successivement pour couvrir le taux fixe correspondant à l'heure de début de la première exécution. La classe Timer fournit la méthode cancel() pour annuler le minuteur. Lorsque cette méthode est appelée, le timer expire. La classe Timer effectue uniquement des tâches qui implémentent TimerTask.

Exemple

import java.util.*;
public class TimerThreadTest {
   public static void main(String []args) {
      Task t1 = new Task("Task 1");
      Task t2 = new Task("Task 2");
      Timer t = new Timer();
      t.schedule(t1, 10000); <strong>//  executes for every 10 seconds</strong>
      t.schedule(t2, 1000, 2000); <strong>// executes for every 2 seconds</strong>
   }
}
class Task extends TimerTask {
   private String name;
   public Task(String name) {
       this.name = name;
   }
   public void run() {
      System.out.println("[" + new Date() + "] " + name + ": task executed!");
   }
}
Copier après la connexion

Sortie

[Thu Aug 01 21:32:44 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:46 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:48 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:50 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:52 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:53 IST 2019] Task 1: task executed!
[Thu Aug 01 21:32:54 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:56 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:58 IST 2019] Task 2: task executed!
[Thu Aug 01 21:33:00 IST 2019] Task 2: task executed!
Copier après la connexion

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:tutorialspoint.com
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