• 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!");
          }
      }
    }

     

    It's a lonely road!!!
  • 相关阅读:
    尚硅谷前端2020Web前端学习记录
    阿里网盘阿里云网盘内测资格获取,阿里网盘开通
    冰眼冷链物流监控平台-2020微服务项目实战
    探花交友智能推荐社交项目-2020Java大数据实战
    互联网Java工程师面试突击三季
    恋上数据结构与算法(一、二、三季)
    布客&#183;ApacheCN 编程/后端/大数据/人工智能学习资源 2020.9
    NumPy 基础知识·翻译完成
    NumPy 初学者指南中文第三版·翻译完成
    NumPy 秘籍中文第二版·翻译完成
  • 原文地址:https://www.cnblogs.com/JunkingBoy/p/14860613.html
Copyright © 2020-2023  润新知