• 技术文章 >java >java基础

    Java守护线程和用户线程的区别

    小妮浅浅小妮浅浅2021-08-02 10:17:01原创4450

    定义不同

    用户线程:平时使用到的线程均为用户线程。

    守护线程:用来服务用户线程的线程,例如垃圾回收线程。

    作用区别

    1、守护线程和用户线程的区别主要在于Java虚拟机是后存活。

    2、用户线程:当任何一个用户线程未结束,Java虚拟机是不会结束的。守护线程:如果只剩守护线程未结束,Java虚拟机结束。

    实例

    在主线程中启动守护线程。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    package com.thread.model.threads;

      

      

    /**

     * Hello world!

     *

     */

    public class ThreadClass

    {

        public static void main( String[] args )

        {

            Thread thread = new Thread(new Runnable() {

      

      

    public void run() {

    while(true) {

    try {

    System.out.println("守护线程心跳一次");

    Thread.sleep(1000);

    } catch (InterruptedException e) {

    e.printStackTrace();

    }

    }

    }

            

            });

             

            thread.setDaemon(true);//将该线程设置为守护线程

             

            thread.start();

             

            try {

    Thread.sleep(10000);

    Thread currentthread = Thread.currentThread();

    System.out.println("主线程"+currentthread.getName()+"退出!");

    } catch (InterruptedException e) {

    e.printStackTrace();

    }

        }

      

    }

    以上就是Java守护线程和用户线程的区别,希望对大家有所帮助。更多Java学习指路:Java基础

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java线程
    上一篇:java进程和线程的关系 下一篇:Java Executors中的四种线程池

    相关文章推荐

    • java线程池的运行流程• java线程池创建方式• java线程池异常的处理方法• java线程池的工作队列有哪几个• Java线程调度的方式是什么?• Java线程状态有哪几种• java线程和进程的区分• java线程优先级是什么

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网