休眠和中断

2017-03-12  本文已影响0人  liuweiiii

sleep使线程休眠,另一个线程可以调用sleep线程的interrupt中断它的休眠。

结束休眠状态有两种途径:

①休眠时间到达后,线程重新进入运行状态。

②处于休眠状态的线程遇上java.lang.InterruptedException异常,从而被迫停止休眠。

使线程进入休眠状态可以直接调用Thread.sleep();打断某线程的休眠状态的手段是调用该线程的interrupt()方法。


main(String[] args) {

MyThread t1=new MyThread();

t1.start();

Thread.sleep(5);

synchronized(t1)

{

t1.interrupt();

}

}

}

class MyThread extends Thread

{

public void run(){

try{

Thread.sleep(5000);

}catch (InterruptedException e) {

System.out.println("interrupted");

}

System.out.println("休眠结束");

}

}

本来t1要休眠(sleep)5000毫秒的,结果主线程5毫秒后中断了它的休眠,5毫秒后t1就‘醒了’

上一篇下一篇

猜你喜欢

热点阅读