Question

Qu'advient-il de la classe qui étend TimerTask après l'exécution de sa méthode d'exécution? La valeur pour ma tâche est-elle nulle ou après l'exécution?

MyTask myTask = new MyTask();
Était-ce utile?

La solution

Si vous l'avez démarré à partir d'une méthode qui s'est terminée depuis (et ne l'avez référencé nulle part, par exemple dans une variable membre d'un objet toujours en vie), il sera nettoyé par le ramasse-miettes.

Il n'est pas nécessaire de définir la valeur sur null sauf si la tâche conserve des références à d'énormes quantités de mémoire.

Si vous voulez vraiment dé-référencer la tâche, vous devez ajouter un appel à la fin de sa méthode run () pour la supprimer, d'où que vous la référeniez.

Autres conseils

Rien. Vous pouvez consulter le code source du Minuteur , pour comprendre ce qui se passe réellement quand un TimerTask est planifié.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top