Ok je comprend mieux ton besoin
Lorsque ton thread reçoit l'interruption, il y a 2 cas de figure :
* Soit tu es en attente dans le wait(), et cela génèrera une exception qui te fera sortir de la boucle (et donc le thread s'arrêtera).
* Soit tu effectues des traitements qui vont ignorer l'interruption, et dans ce cas tu sortira de la boucle au prochain passage car la condition sera fausse.
L'appel à la méthode close() devra être fait manuellement. Toutefois tu peux mettre en place un garde-fou via finalize() :
PS : Et si tu utilises Java 5 ou plus, tu pourrais te tourner vers les
BlockingQueue pour "passer" les actions à ton thread : c'est plus simple que les wait/notify

Partager