public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
level a = new level();
Thread thr1 = new Thread(a);
Thread thr2 = new Thread(a);
Thread thr3 = new Thread(a);
Thread thr4 = new Thread(a);
Thread thr5 = new Thread(a);
thr1.setPriority(2);
thr5.setPriority(9);
thr3.setPriority(6);
thr1.start();
thr2.start();
thr3.start();
thr4.start();
thr5.start();
}
}
class level implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println("线程名:"+Thread.currentThread().getName()+"\t优先级"+Thread.currentThread().getPriority());
}
}
此程序输出为何是:
线程名:Thread-0 优先级2
线程名:Thread-1 优先级5
线程名:Thread-4 优先级9
线程名:Thread-2 优先级6
线程名:Thread-3 优先级5
这样啊??线程执行不是根据优先级的大小的顺序执行吗?
这个例子具体是怎么运行的啊?菜鸟请求高手赐教