JavaSE 学习参考:线程的优先级

Thread类代表了Java线程类,多个线程在排队队列等待执行时机会是相等的,Thead类提供了setPriority(int priority)方法来设置线程对象的优先级,参数是1-10之间的整数,如果超过这个范围则抛出非法参数异常:IllegalArgumentException

Thread类提供了三个常量:

pubic static final intMAX_PRIORITY=10;  代表最高优先级

pubic static final intThread.MIN_PRIORITY=1 代表最低优先级

pubic static final intThread.NORM_PRIORITY=5默认优先级

Thread类对象的默认线程的优先是5

示例代码:

classMyThreadextendsThread{

privateStringstr;

privateintcount;

publicMyThread(Stringstr,intcount){

this.str=str;

this.count=count;

}

@Override

publicvoidrun() {

for(inti=0;i

System.out.println(str);

}

}

publicclassDemo1 {

publicstaticvoidmain(String[]args) {

Threadt1=newMyThread("AAAAAAA",100);

Threadt2=newMyThread("BBBBBBB",100);

t1.setPriority(10);

t2.setPriority(1);

t1.start();

t2.start();

}

}

观察运行结果可以发现t1线程优先线t2结束。

你可能感兴趣的:(JavaSE 学习参考:线程的优先级)