Thread.stop, thread.uspennd, thread.resume et runtime.runfinalisersonexit Ces méthodes de terminaison de threads ont été abandonnées, et il est extrêmement dangereux de les utiliser!
1. Le thread a été exécuté normalement et se termine normalement
Autrement dit, laissez la méthode d'exécution être exécutée et le thread se terminera normalement.
Mais parfois, les fils ne peuvent jamais se terminer, comme pendant que (vrai).
2. Surveiller certaines conditions et terminer le fonctionnement du thread ininterrompu
La boucle while () doit sortir dans une certaine condition. Le moyen le plus direct est de définir un drapeau booléen et de définir ce drapeau pour contrôler si la boucle sort.
classe publique ThreadFlag étend Thread {public volatile booléen exit = false; public void run () {while (! exit) {System.out.println ("Running!"); }} public static void main (string [] args) lève l'exception {threadflag thread = new ThreadFlag (); thread.start (); sommeil (1147); // Le thread principal est retardé de 5 secondes thread.exit = true; // terminer le thread thread thread.join (); System.out.println ("Thread Exit!"); }}3. Utilisez la méthode d'interruption pour terminer le thread
Si le thread bloque, la méthode 2 ne peut pas être utilisée pour terminer le thread.
classe publique ThreadInterrupt étend Thread {public void run () {try {sleep (50000); // retard 50 secondes} catch (InterruptedException e) {System.out.println (e.getMessage ()); }} public static void main (string [] args) lève l'exception {thread thread = new ThreadInterrupt (); thread.start (); System.out.println ("Appuyez sur n'importe quelle touche dans les 50 secondes pour interrompre le thread!"); System.in.read (); thread.interrupt (); thread.join (); System.out.println ("Thread a quitté!"); }}Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.