线程停止:在线程处理完任务之前,停掉正在做的操作,也就是放弃当前操作。
在java中有三种方法可以实现线程的停止:
使用退出标志,使线程正常退出,也就是当run方法执行完后线程终止。
使用stop强行终止线程。但是不推荐这个方法,因为stop与suspend以及resume一样,都是作废过期的方法,使它们产生不可预期的结果。
使用interrupt()方法中断线程。该方法不会终止一个线程,还需要加入一个判断才能够完成线程的终止。
1.7.1停不了的线程本例中调用interrupt()方法来停止线程,但是interrupt()方法并不像循环中的break关键字一样可以立即起效,interrupt()方法仅仅是在当前线程中打了一个停止的标记,并没有真正停止线程。
线程代码:
public class MyThread extends Thread { @Override public void run() { for (int i = 0; i < 500000; i++) { System.out.println("i = " + (i + 1)); } } }