首页 > 编程语言 > 详细

线程的优先级

时间:2021-05-12 14:47:40      阅读:18      评论:0      收藏:0      [点我收藏+]

线程的优先级

  1. 优先级的范围是1-10,使用getPriority()获取,setPriority()改变

  2. main方法的默认优先级是5

  3. 优先级的高低值意味着被CPU调度的可能性高低,能否被调度还是CPU,所以不一定优先级高就一定先被调用,只能增加概率

package com.thread.state;
?
public class TestPriority {
   public static void main(String[] args) {
       //主线程默认优先级
       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);
?
       //先设置优先级再启动
       t1.start();
?
       t2.setPriority(1);
       t2.start();
?
       t3.setPriority(8);
       t3.start();
?
       t4.setPriority(Thread.MAX_PRIORITY);
       t4.start();
?
       t5.setPriority(9);
       t5.start();
  }
?
}
class MyPriority implements Runnable{
?
   @Override
   public void run() {
       System.out.println(Thread.currentThread().getName()+"->"+Thread.currentThread().getPriority());
  }
}
?

 

线程的优先级

原文:https://www.cnblogs.com/Share-my-life/p/14759207.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!