如何结束线程-线程中断
停止现成的方式
线程停止的方式:
线程执行完毕,自然会停止
异常退出
设置了标志位,当标志位为false时退出
线程中断退出
(这也是一道常见面试题)
线程函数执行完毕正常退出和发生异常被迫退出都不受我们控制,下面讨论控制线程停止的方式。
设置退出标志位
package com.sync.demo;
import javax.swing.text.html.HTML.Tag;
public class Demo5 {
public static void main(String[] args) {
ThreadC c = new ThreadC();
Thread thread = new Thread(c);
thread.start();
try {
Thread.sleep(3000);
c.setTag(false);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
static class ThreadC implements Runnable{
private boolean Tag = true;
public boolean isTag() {
return Tag;
}
public void setTag(boolean tag) {
Tag = tag;
}
public ThreadC() {
super();
}
@Override
public void run() {
while (true) {
if (!Tag) {
System.out.println("=========退出============");
return ;
}else {
System.out.println("=========run============");
}
}
}
}
}
————————————————