0
我對Java編碼很陌生。我有一個thread.sleep()暫停執行,並希望編寫一個代碼以在控制檯上按下按鍵來恢復執行。這裏是我的代碼:使用任何按鍵恢復執行
int pausetime = 9000; //user input
if (pausetime!=0){
thread.sleep(pausetime)}
例如用戶輸入9000,並決定恢復在5秒執行,代碼應恢復與控制檯上的任意按鍵執行。
我對Java編碼很陌生。我有一個thread.sleep()暫停執行,並希望編寫一個代碼以在控制檯上按下按鍵來恢復執行。這裏是我的代碼:使用任何按鍵恢復執行
int pausetime = 9000; //user input
if (pausetime!=0){
thread.sleep(pausetime)}
例如用戶輸入9000,並決定恢復在5秒執行,代碼應恢復與控制檯上的任意按鍵執行。
如果你使用的是Thread.sleep,那麼你必須中斷這個拋出異常的線程,你必須處理它並繼續執行。
這是在我暫停了線程的run方法在等待main方法的輸入,然後用戶輸入後,上述線程中斷示例代碼
void run(){
try {
Thread.sleep(15000);
System.out.println("sleeping");
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Runnig thread again");
}
...
main(...){
Thread t= new Thread(task,"start");
t.start();
a=new InputStreamReader(System.in);
char[] ac=new char[5];
try {
a.read(ac);
} catch (IOException e){
e.printStackTrace();
}
if(ac.length>0)
t.interrupt();
}
,我想你應該看看['等待()'和'notify()'](https://stackoverflow.com/a/1036763/2656632)而不是'sleep()' –