6.7Java线程的分类
作者:互联网
6.7Java线程的分类
Java中线程的分类
默认的用户线程
为用户线程服务的守护线程--->daemon
Java中线程的特点
-
虚拟机必须确保用户线程执行完毕(不需要等待守护线程执行完毕)
-
虚拟机不用等待守护线程执行完毕--->如后台记录操作日志、监控内存使用
Java守护线程的设置和守护线程的使用
package iostudy.priority;
/**
* Java线程分类测试
* 1、用户线程
* 默认线程都是用户线程,虚拟机等待所有线程执行完毕才会停止。否则他不会停止
* 2、守护线程
* 守护线程为用户线程服务,jvm停止不用等待守护吸纳成执行完毕
* @since JDK 1.8
* @date 2021/6/7
* @author Lucifer
*/
public class DaemonTest {
public static void main(String[] args) {
/*实例化两个线程对象*/
God god = new God();
You you = new You();
/*实例化代理类,调用start方法*/
Thread t = new Thread(god);
/*再中间设置线程类型*/
t.setDaemon(true); //将用户线程调整为守护线程
/*
用户线程执行完毕就会直接停止
不用等待守护线程执行完毕
*/
t.start();
new Thread(you).start();
}
}
/**
* 创建多线程实现类
* 这是一个用户线程
* @since JDk 1.8
* @date 2021/6/7
* @author Lucifer
*/
class You implements Runnable{
/*重写run方法*/
@Override
public void run(){
/*循环输出生命周期*/
for (int i = 1; i <= 365 * 100; i++){
System.out.println("Life!!!");
}
System.out.println("JunkingBoy");
}
}
/**
* 创建一个守护线程
* @since JDK 1.8
* @date 2021/6/7
* @author Lucifer
*/
class God implements Runnable{
/*重写run方法*/
@Override
public void run(){
while (true){
System.out.println("God Father!");
}
}
}
标签:Java,用户,6.7,完毕,线程,new,守护 来源: https://www.cnblogs.com/JunkingBoy/p/14860613.html