Problème avec scheduleAtFixedRate
Résolu/Fermé3 réponses
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
Modifié par KX le 4/11/2014 à 22:56
Modifié par KX le 4/11/2014 à 22:56
Bonjour,
Comme indiqué dans la documentation de Timer, depuis Java 5 pour faire ce genre de tâches il est plus intéressant d'utiliser un ScheduledThreadPoolExecutor, qui s'utilise plus ou moins de la même manière.
En Java 7 :
En Java 8 :
La confiance n'exclut pas le contrôle
Comme indiqué dans la documentation de Timer, depuis Java 5 pour faire ce genre de tâches il est plus intéressant d'utiliser un ScheduledThreadPoolExecutor, qui s'utilise plus ou moins de la même manière.
En Java 7 :
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
executor.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
System.out.println(System.currentTimeMillis());
}
}, 0, 1, TimeUnit.SECONDS);
En Java 8 :
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1); executor.scheduleAtFixedRate(() -> System.out.println(System.currentTimeMillis()), 0, 1, TimeUnit.SECONDS);
La confiance n'exclut pas le contrôle