优先级队列PriorityBlockingQueue中优先级高的线程一定先执行吗?

不一定,优先级高的线程有更大的概率先执行,但并不保证优先级高的线程一定先执行。

PriorityBlockingQueue中的对象要实现Comparable接口

下面的结果是《Java编程思想》中关于PriorityBlockingQueue代码的部分执行结果 (稍微修改了一点,p表示设置的优先级) :

p=[9  ] Task id=5
p=[9  ] Task id=13
p=[9  ] Task id=14
p=[8  ] Task id=10
p=[8  ] Task id=15
p=[8  ] Task id=16
p=[8  ] Task id=0
p=[8  ] Task id=19
p=[8  ] Task id=11
p=[8  ] Task id=6
p=[7  ] Task id=9
p=[5  ] Task id=1
p=[3  ] Task id=2
p=[2  ] Task id=8
p=[1  ] Task id=12
p=[1  ] Task id=17
p=[1  ] Task id=4
p=[1  ] Task id=3
p=[0  ] Task id=7
p=[0  ] Task id=18
p=[10 ] Task id=20
p=[10 ] Task id=21
p=[10 ] Task id=22
p=[10 ] Task id=23
p=[10 ] Task id=24
p=[10 ] Task id=25
p=[10 ] Task id=26
p=[10 ] Task id=27
p=[10 ] Task id=28
p=[10 ] Task id=29
p=[9  ] Task id=39
p=[8  ] Task id=38
p=[7  ] Task id=37
p=[6  ] Task id=36
p=[5  ] Task id=35
p=[4  ] Task id=34
p=[3  ] Task id=33
p=[2  ] Task id=32
p=[1  ] Task id=31
p=[0  ] Task id=30

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值