线程优先级

在操作系统中,线程可以划分优先级,优先级较高的线程得到的CPU资源较多,也就是CPU优先执行优先级较高的线程对象中的任务。

设置线程的优先级有助于帮“线程规划器”确定下一次选择哪一个线程优先执行。

设置线程的优先级使用setPriority()方法:

线程优先级_第1张图片
image.png

在java中,线程的优先级分为1-10这是个等级,如果小于1或者大于10,则会抛出IllegalArgumentException

线程的优先级具有继承性,比如A线程启动B线程,则B线程的优先级与A是一样的。

public class InterruptThread extends Thread {
    @Override
    public void run() {
        System.out.println("thread线程优先级:" + this.getPriority());
    }
}
public class Test {
    public static void main(String[] args) {
        InterruptThread it = new InterruptThread();
        it.setPriority(6);
        it.start();
        System.out.println("main线程优先级:" + it.getPriority());
    }
}
线程优先级_第2张图片
image.png

线程的优先级具有随机性,也就是优先级较高的线程不一定每一次都先执行完。

你可能感兴趣的:(线程优先级)