首页 > 其他分享 >多线程.线程优先级

多线程.线程优先级

时间:2022-08-17 21:12:18浏览次数:54  
标签:myPriority 优先级 Thread start setPriority 线程 new 多线程

Priority优先级

线程优先级用数字表示,范围从1~10

  • Thread.MIN_PRIORITY = 1;

  • Thread.MAX_PRIORITY = 10;

  • Thread.NORM_PRIORITY = 5;

使用以下方式改变或获取优先级:getPriority().setPriority(int xxx)

优先级低只是意味着获取调
package oop.state;

//测试线程优先级
public class TestPriority {

    public static void main(String[] args) {
        //主线程默认优先级 默认优先级为5
        System.out.println(Thread.currentThread().getName()+"-->"+Thread.currentThread().getPriority());
        MyPriority myPriority = new MyPriority();

        Thread t1 = new Thread(myPriority);
        Thread t2 = new Thread(myPriority);
        Thread t3 = new Thread(myPriority);
        Thread t4 = new Thread(myPriority);
        Thread t5 = new Thread(myPriority);
        Thread t6 = new Thread(myPriority);

        //先设置优先级,再启动
        t1.start();

        t2.setPriority(1);
        t2.start();

        t3.setPriority(4);
        t3.start();

        t4.setPriority(Thread.MAX_PRIORITY);//MAX_PRIORITY=10
        t4.start();

        t5.setPriority(-1);
        t5.start();

        t6.setPriority(11);
        t6.start();

    }
}
class MyPriority implements Runnable{

    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName()+"-->"+Thread.currentThread().getPriority());
    }
}

 

度的概率低,并不是优先级低就不会被调用了,这都是看cpu的调度

搜索

复制

标签:myPriority,优先级,Thread,start,setPriority,线程,new,多线程
From: https://www.cnblogs.com/sususyq-/p/16596763.html

相关文章

  • [记]Rust在多线程下修改共享变量的值
    1.usestd::time::Duration;usestd::sync::{Arc,Mutex};usestd::thread;fnmain(){letokz="2333".to_string();letapple=Arc::new(Mutex::......
  • SpringBoot 多线程
    关于SpringBoot中多线程的两个注解:@Async是spring为了方便开发人员进行异步调用而出现的。在方法上加入这个注解,spring会从线程池中获取一个新的线程来执行方法,实现异步调......
  • Nodejs 多进程与多线程
    为什么要使用多进程多进程与多线程介绍Nodejs多进程和多线程使用与区别cluster为什么需要多进程nodejs单线程,在处理http请求的时候一个错误都会导致进程退出,这是灾......
  • 如何正确的中断线程?你的姿势是否正确
    Java停止线程的逻辑(协同、通知)在Java程序中,我们想要停止一个线程可以通过interrupt方法进行停止。但是当我们调用interrupt方法之后,它可能并不会立刻就会停止线程,而是通知......
  • Python爬虫之多线程异步爬虫,非常详细
    Python爬虫之多线程爬虫在使用Python的过程中,我们可能遇到这样一个场景,需要下载某一个网站上的多个资源;例如:我们想下载豆瓣电影Top250所有的宣传图片具体代码如下......
  • 如果一个线程两次调用start(),会出现什么问题?
    如果一个线程两次调用start(),会出现什么问题?“如果一个线程两次调用start(),会出现什么问题?”如果这个问题出自阿里p6岗位第一面的提问,你能回答出来吗?大家好,我是Mic,一个......
  • 队列:队列在线程池等有限资源池中的应用
    目录如何理解“队列”?顺序队列和链式队列循环队列阻塞队列和并发队列阻塞队列并发队列线程池没有空闲线程时,新的任务请求线程资源时,线程池该如何处理?各种处理策略又是如何......
  • 03 - 多线程之间如何实现通讯
    Java多线程之间如何实现通讯多个线程之间通过wait,notify通讯publicclassThread007{classRes{publicStringuserName;publiccharuserSex......
  • 【Java面试】如果一个线程两次调用start(),会出现什么问题?
    “如果一个线程两次调用start(),会出现什么问题?”如果这个问题出自阿里p6岗位第一面的提问,你能回答出来吗?大家好,我是Mic,一个工作了14年的Java程序员。关于这个问题,涉及......
  • 线程的生命周期和触发的机制
    java线程的五种基本状态1.新建状态(new):当线程对象创建后,即进入新建状态,如Threadt=newMyThread();2.就绪状态(Runnable):当调用线程对象的start()方法(t.start()),线程即进入......