Java多线程与并发之守护线程[90]
一、 守护线程概念
1.setDaemon(boolean on):将线程标记为守护线程,在程序运行中,如果线程没有了用户线程,只剩守护线程,那么程序将结束,java虚拟机jvm将退出;
2.isDaemon():判断这个线程是否是守护线程;
yield():暂停当前执行线程,执行其他线程,循环中只暂停一次;
setName(“Myt”):设置该线程名称;
mt.setPriority():设置线程的优先级;
二、代码演示
Myt mt=new Myt();
mt.setDaemon(true);
mt.setName("Myt");
mt.setPriority(Thread.MAX_PRIORITY);
mt.start();
for (int i = 0; i < 50; i++) {
System.out.println(Thread.currentThread().getName()+"="+i);
Thread.sleep(200);
}
class Myt extends Thread{
@Override
public void run() {
for (int i = 0; i < 50; i++) {
System.out.println(Thread.currentThread().getName()+"--"+i);
try {
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
三.小结
本章概述了Java中的守护线程,守护线程很重要,在后面学高级知识点时,会有很多需要使用守护线程的地方,比如分布式锁和超时监听等都需要使用守护线程保证准确性;
有哪里不足或者有更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴,可以私信我,我会一一答复,感谢认可,感谢支持!