我正在按照以下代码运行,以了解守护程序线程概念和线程终止。即使完成了主要方法,程序仍会继续打印。我在这里想念什么吗?
package threading;
public class ThreadInterruption {
public static void main(String[] args) {
Thread t = new Thread(new RanThread());
t.start();
t.setDaemon(true);
t.interrupt();
}
}
class RanThread implements Runnable{
@Override
public void run() {
int count=0;
while(true) {
System.out.println("Ha Ha Ha "+ count);
count=count+1;
}
}
}
先谢谢了。
答案 0 :(得分:0)
启动线程之前,必须将其设置为守护程序。
如果您阅读API文档,则会显示“必须在线程启动之前调用此方法。”
因此交换start和setDaemon行,您应该会很好。