J'utilise la java.util.timer
classe et j'utilise sa méthode de planification pour effectuer une tâche, mais après l'avoir exécutée 6 fois, je dois arrêter sa tâche.
Comment dois-je faire ça?
Gardez une référence à la minuterie quelque part et utilisez:
timer.cancel();
timer.purge();
pour arrêter tout ce qu'il fait. Vous pouvez mettre ce code dans la tâche que vous effectuez avec un static int
pour compter le nombre de fois où vous êtes allé, par exemple
private static int count = 0;
public static void run() {
count++;
if (count >= 6) {
timer.cancel();
timer.purge();
return;
}
... perform task here ....
}
cancel
cela fonctionnerait.Soit appel
cancel()
sur leTimer
si c'est tout qu'il fait, oucancel()
sur leTimerTask
si la minuterie elle - même a d' autres tâches que vous souhaitez continuer.la source
Vous devez arrêter la tâche que vous avez programmée sur le minuteur: Votre minuteur:
Pour arrêter:
Notez que le simple fait d'annuler la minuterie ne mettra pas fin aux tâches horaires en cours.
la source
la source
Arrêtez la minuterie une fois après le réveil à un moment précis en millisecondes.
la source