一句话总结, 线程创建默认是用户线程, 如果当setDaemon(true) 的时候, 将会变成守护线程, 守护线程会随着主线程的结束而结束
/**
* setDaemon 微信下载的例子 假如有一个线程,随着主程序存在而存在,停止而停止
*/
public class Demo04 {
public static void main(String[] args) {
WeiXin weiXin = new WeiXin("微信");
weiXin.setDaemon(false);
System.out.println(weiXin.isDaemon());
weiXin.start();
for (int i = 0; i <= 100; i++) {
System.out.println(Thread.currentThread().getName() + i);
}
}
}
class WeiXin extends Thread {
public WeiXin(String name) {
super(name);
}
@Override
public void run() {
while (true) {
for (int i = 1; i <= 100; i++) {
System.out.println("下载进度" + i + "%");
if (i == 100) {
System.out.println("下载完成");
}
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
路过点赞, 月入10w.
网友评论