您的位置:首页 > 编程语言 > Java开发

Java线程优先级的概念

2017-08-12 11:05 260 查看
线程是区分优先级的,优先级越高越可能优先执行

在Java程序中我们可以手动的来设置线程的优先级,设置方法如下:

setPriority()

我们来看这样的一串代码

package com.epoint.wdgtest;

public class WdgTest
{
//用休眠来看程序的并发执行
public static void main(String [] args){
Thread mt1=new myThread("线程1");
Thread mt2=new myThread("线程2");
mt1.setPriority(Thread.MIN_PRIORITY);
mt2.setPriority(Thread.MAX_PRIORITY);
mt1.start();
mt2.start();
}
}
class myThread extends Thread{
public myThread(String string) {
super(string);
}
public myThread() {
// TODO Auto-generated constructor stub
}
public void run(){
for(int i=0;i<1;i++){
try {
Thread.sleep(1000);
}
catch (InterruptedException e) {

e.printStackTrace();
}
System.out.println(this.currentThread().getName()+"----"+i);

}
}
}上面的代码中我们设置有线程mt1和mt2的优先级,输出结果如下:


可以看到线程2在线程1之前输出,也就是线程2优先于线程1执行了输出语句,可见我们对优先级的设置还是有一定的效果,但是我们需要知道的是设置了高的优先级,仅仅是可能优先执行,可能。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 线程