java—线程的优先级

线程的优先级等级

MAX_PRIORITY:10 最大优先级
MIN_PRIORITY:1 最小优先级
NORM_PRIORITY:5 默认优先级


相关方法

getPriority():返回线程优先级
setPriority(int newPriority):改变线程的优先级

线程优先级的说明:

线程创建时继承父线程的优先级
低优先级只是获得调度的概率低,并非一定是在高优先级线程之后才被调用

※说明:高优先级的线程要抢占低公先级线程cpu的执行权。但是只是从概率上讲,高优先级的线程高概率的情况下被执行。并不意味着只有当高优先级的线程执行完以后,低优先级的线程才执行。


eg:

//①.创建一个继承与Thread的子类
 class MyThread extends Thread{
  
//②.重写run方法  
	 public void run() {
	  for (int i = 0; i < 100; i++) {
	   if (i%2==0) {
	    System.out.println(Thread.currentThread().getName()+" "+i);
	   		}   
	  	}
	 } 
}
	 
public class ThreadTest {
 public static void main(String[] args) {
  
  //③.创建Thread类的子类的对象
  MyThread h1 = new MyThread();
  
  //④.通过此对象调用start方法
  h1.start();
  
  //设置分线程的优先级
  h1.setPriority(Thread.MAX_PRIORITY);
  
  //设置主线程的优先级
  Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
 
 
  	for (int i = 0; i < 100; i++) {
   		if (i%2==0) {
   	 	System.out.println(Thread.currentThread().getName()+" "+i);
   		} 
  	}  
 }
}

执行结果:
(高优先级的h1并没有优先执行完成)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值