Java originally provided the stop() method in Thread to terminate the thread, but this method is unsafe, so it is generally not recommended to use it.
This article introduces you to using the interrupt method to interrupt a thread.
Using the interrupt method to terminate a thread can be divided into two situations:
(1) The thread is in a blocked state, such as using the sleep method.
(2) Use while(!isInterrupted()){...} to determine whether the thread is interrupted.
In the first case using the interrupt method, the sleep method will throw an InterruptedException exception, while in the second case the thread will exit directly. The following code demonstrates the use of the interrupt method in the first case
/* author by w3cschool.cc ThreadInterrupt.java */public class ThreadInterrupt extends Thread { public void run() { try { sleep(50000); // 延迟50秒 } catch (InterruptedException e) { System.out.println(e.getMessage()); } } public static void main(String[] args) throws Exception { Thread thread = new ThreadInterrupt(); thread.start(); System.out.println("在50秒之内按任意键中断线程!"); System.in.read(); thread.interrupt(); thread.join(); System.out.println("线程已经退出!"); } }
The output result of the above code is:
在50秒之内按任意键中断线程! sleep interrupted 线程已经退出!
The above is the content of the Java instance - terminating the thread. For more information, please Follow the PHP Chinese website (www.php.cn)!