三、线程的调度

一、多个线程处于可运行状态,只有一个线程处于实际运行状态,就要用到线程调度。
二、优先级:反应线程的重要或紧急程度;线程的优先级用1-10表示,10的优先级最高,默认值是5。优先级越高,执行机会越高。
三、更改优先级:setPriority(intgrade);myThread.setPriority(3);
四、线程调度方法:
join():将指定的线程加入到当前线程,就是插队
sleep(): 将当前的线程阻塞指定的毫秒数,是Thread类的一个静态方法。
五、join实例:
publicclass MyThreadextends Thread(){
publicvoidrun(){
for ( inti = 1; i <= 5; i++) {
System.out.println( this.getName() + " + " +i );
}
}
}
【三、线程的调度】main() {
//当i=5时,让另一个线程开始运行
for ( inti = 1; i <= 10 ; i++) {
if ( i == 5) {
MyThreadthread= newMyThread () ;
thread.start();
//让main阻塞
thread.join(); //此时需要捕捉一下异常,太长了,在这里就不写了
}
//Thread.currentThread()代表当前线程,当前线程就是main
System.out.println( Thread.currentThread().getName() + " + " +i );
}
}
六、sleep实例:让当前线程阻塞一段时间
main() {
System.out.println( " wait " );
//五秒之后输出
Thread.sleep( 5000 ); //有异常,需要捕捉
System.out.println( " continue " );
}

    推荐阅读