C'est à peine lisible... Je ne comprend rien à ce que tu essayes de faire dans ton code mais je peux te dire que quand tu appelles stopThread() tu vas lever une belle NullPointerException. Dans la boucle de ton run() tu dois également ajouter la condition:
&& !Thread.interrupted()
pour tester si un appel à l'interruption a été fait par le thread principal et ainsi sortir de la boucle si c'est le cas pour que ton Thread puisse se terminer proprement.
Après avoir appelé t1.interrupt(), ton thread continue à fonctionner pendant quelques instants, c'est normal, pas la peine d'appeler t1.interrupt() en boucle. Pour que ton thread principal attende que le thread t1 s'arrête, tu dois appeler t1.join().
Si tu n'as pas encore compris je te conseille de te documenter un peu sur les threads via un bon bouquin.
Message édité par cbeyls le 17-09-2009 à 17:47:50