線程等待問(wèn)題處理
class MyThread implements Runnable {
@Override
public void run() {
System.out.println("1、進(jìn)入run()方法休眠");
try {
System.out.println("2、線程休眠20秒");
Thread.sleep(20000);//這里休眠20秒
System.out.println("3、線程正常休眠完畢");
} catch (InterruptedException e) {
System.out.println("4、線程發(fā)生異常休眠被中斷");
return;//返回方法調(diào)用處
}
System.out.println("5、線程正常結(jié)束run()方法體");
}
}
public class InterruptDemo {
public static void main(String[] args) {
MyThread mt = new MyThread();
Thread t = new Thread(mt,"線程A");
t.start();//啟動(dòng)線程
//========================================================
try {
Thread.sleep(2000); //保證線程至少執(zhí)行2秒
} catch (InterruptedException e) {
e.printStackTrace();
}
//========================================================
t.interrupt();//中斷線程
}
}
@Override
public void run() {
System.out.println("1、進(jìn)入run()方法休眠");
try {
System.out.println("2、線程休眠20秒");
Thread.sleep(20000);//這里休眠20秒
System.out.println("3、線程正常休眠完畢");
} catch (InterruptedException e) {
System.out.println("4、線程發(fā)生異常休眠被中斷");
return;//返回方法調(diào)用處
}
System.out.println("5、線程正常結(jié)束run()方法體");
}
}
public class InterruptDemo {
public static void main(String[] args) {
MyThread mt = new MyThread();
Thread t = new Thread(mt,"線程A");
t.start();//啟動(dòng)線程
//========================================================
try {
Thread.sleep(2000); //保證線程至少執(zhí)行2秒
} catch (InterruptedException e) {
e.printStackTrace();
}
//========================================================
t.interrupt();//中斷線程
}
}
posted on 2012-06-21 15:21 wyx 閱讀(207) 評(píng)論(0) 編輯 收藏