2010-11-10 10 views

Répondre

5

TimerTask et Thread s'exécutent de manière asynchrone, mais TimerTask est programmé pour s'exécuter à intervalles fixes alors que Thread ne l'est pas. Un Thread est une primitive assez bas niveau pour l'exécution parallèle dans un espace d'adressage virtuel partagé, et il s'exécute chaque fois qu'il se trouve dans la file d'attente d'exécution et obtient un tour pour s'exécuter; un TimerTask est uniquement autorisé à s'exécuter aux intervalles fixes auxquels il était prévu qu'il s'exécute.

3

TimerTask et Thread se comportent de la même manière que vous les exécutiez en utilisant Groovy ou Java. TimerTask facilite l'exécution de tâches ponctuelles ou récurrentes en utilisant un temporisateur. TimerTask n'a vraiment rien à voir avec Threads, à part le fait que le Timer va exécuter ces tâches dans un thread d'arrière-plan (bien que cela puisse être considéré comme un détail d'implémentation de la classe Timer). Thread, d'autre part, est une classe de bas niveau pour faire l'exécution parallèle de quoi que ce soit dans un thread séparé, et ne fournit aucune fonctionnalité de calendrier ou de planification de travail.