我是靠谱客的博主 紧张画笔,最近开发中收集的这篇文章主要介绍Java多线程_05 线程的优先级,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

线程的优先级


  • Java线程的优先级范围是1~10,默认优先级是5,10最高。
  • 线程的优先级仍然无法保障线程的执行次序,只是说优先级高的线程获取CPU资源的概率较大,优先级低的并非没机会执行。
  • 主线程的优先级是5。
public class UserRunnable implements Runnable {
    @Override
    public void run() {
        for (int i = 0; i < 10; i++) {
            System.out.println(Thread.currentThread().getName() + "第" + i + "次执行");
        }
    }
}

我们两个线程分别设置最低和最高优先级

public class Test {
    public static void main(String[] args) {
        UserThread t0 = new UserThread();
        UserThread t1 = new UserThread();
        t0.setPriority(1);
        t1.setPriority(10);
        t0.start();
        t1.start();
    }
}

观察测试结果:
在这里插入图片描述
我们可以发现,每隔1秒输出一次,一共10次,由于t1的优先级设置的比较高,所以更多的情况是t1先执行,当然,这仅仅是t1的机会比较大,t0有时候也能先抢到资源。

最后

以上就是紧张画笔为你收集整理的Java多线程_05 线程的优先级的全部内容,希望文章能够帮你解决Java多线程_05 线程的优先级所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部