• 线程的优先级&&守护线程



    一、线程的优先级


    java 提供了一个线程调度器来监控程序种启动后进入就绪状态的所有线程,线程调度器按照线程的优先级决定应该调度哪个线程来执行,优先级高的被优先调度。

    优先级用数字来表示,范围从 1 到 10:

    • Thread.MIN_ PRIORITY = 1;
    • Thread.MAX_ PRIORITY = 10;
    • Thread.NORM_PRIORITY = 5.

    优先级的设定,建议在 start() 方法的调用之前进行设定。

    设定方式就是 new 出线程之后:

    t.setPriority(Thread.MAX_PRIORITY);
    

    注意:

    优先级高只是意味着获得调度的概率高,并不是会绝对优先调度他,还是那句话,调度是CPU决定的。


    二、守护线程


    线程分为:用户线程和守护线程

    虚拟机必须保护用户线程执行完毕;而不用等待守护线程执行完毕。

    而 默认情况下,我们写出的线程,都是用户线程,也就是说,虚拟机会一直等到执行完毕。

    线程类提供了方法,可以设置某一个线程为守护线程:

    t.setDaemon(true);//将用户线程调整为守护线程
    

    Daemon单词意思是希腊神话里的一个精灵。

    一般守护线程就是类似后台的操作日志、监控内存使用等线程。

  • 相关阅读:
    菜鸟学存储:网络存储IP SAN与IB SAN
    读xml高手
    预先加载图片
    xred520
    最简单准确的硬盘整数分区设置操作方法
    Google 每天处理约 20000TB 的数据
    IE 8 无法正常使用网站后台编辑器问题
    常用的JS技术1
    adodb stream 使用说明
    [Tools] JDGUI(Java Decompiler)
  • 原文地址:https://www.cnblogs.com/lifegoeson/p/13516063.html
Copyright © 2020-2023  润新知