Java Примеры - прекратить поток
Java-резьбы, первоначально предоставленный в способе остановки (), чтобы прервать поток, но этот метод не является безопасным, он, как правило, не рекомендуется.
В этой статье мы покажем использование прерывания нити прерывания метод.
С помощью метода прерывания до конца резьбы можно разделить на две ситуации:
- (1) поток блокируется, такие, как использование метода сна.
- (2) использовать в то время как (! IsInterrupted ()) {......}, чтобы определить, будет ли прервана нить.
В первом случае, используя метод прерывания, метод сна генерирует исключение InterruptedException, в то время как во втором случае поток будет выходить. Следующий код демонстрирует использование метода прерывания в первом случае.
/* 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("线程已经退出!"); } }
Приведенный выше код выполняется выход:
在50秒之内按任意键中断线程! sleep interrupted 线程已经退出!