java进程高优先级优先级_关于Java中进程中的优先级的一点疑问

public class BasicThreadTest extends Thread{

private String _name;

public BasicThreadTest(String name){

_name = name;

}

public void run(){

try{

for(int i = 0; i 

System.out.println("run ... " + _name + " ... " + i);

}

}catch(Exception e){

e.printStackTrace();

}

}

public static void main(String[] args){

BasicThreadTest th1 = new BasicThreadTest("A");

th1.setPriority(7);

th1.start();

BasicThreadTest th2 = new BasicThreadTest("B");

System.out.println(th2.getPriority());

th2.start();

}

}

在上述代码中,为线程A设置优先级为7,而线程B优先级默认为5。线程A的优先级高于线程B,理论上讲,应该改是A全部执行完成之后,才能执行B。但是实际运行结果为什么是这样的呢?5

run ... A ... 0

run ... A ... 1

run ... A ... 2

run ... A ... 3

run ... A ... 4

run ... A ... 5

run ... A ... 6

run ... A ... 7

run ... A ... 8

run ... B ... 0

run ... A ... 9

run ... B ... 1

run ... A ... 10

run ... A ... 11

run ... A ... 12

run ... A ... 13

run ... A ... 14

run ... B ... 2

run ... A ... 15

run ... A ... 16

run ... B ... 3

run ... B ... 4

run ... B ... 5

run ... B ... 6

run ... A ... 17

run ... B ... 7

run ... A ... 18

run ... B ... 8

run ... A ... 19

run ... B ... 9

run ... A ... 20

run ... B ... 10

run ... A ... 21

run ... B ... 11

run ... A ... 22

run ... B ... 12

run ... A ... 23

run ... B ... 13

run ... A ... 24

run ... B ... 14

run ... A ... 25

run ... B ... 15

run ... A ... 26

run ... B ... 16

run ... A ... 27

run ... B ... 17

run ... A ... 28

run ... B ... 18

run ... A ... 29

run ... B ... 19

run ... B ... 20

run ... B ... 21

run ... B ... 22

run ... B ... 23

run ... B ... 24

run ... B ... 25

run ... B ... 26

run ... B ... 27

run ... B ... 28

run ... B ... 29

多运行几次的结果有时会在线程A全部执行之后,线程B再执行;有时会出现交错的情况。

不是很理解优先级在这里好像没体现出作用,为什么呢?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值