wait()
これは、との動作をテストするために私が書いたコードですnotify()
。今、私はたくさんの疑問を持っています。
class A extends Thread {
public void run() {
try {
wait();
for (int i = 1; i <= 5; i++) {
System.out.println(i);
sleep(500);
}
} catch (Exception e) {
}
System.out.println("End Of Thread");
}
}
class ThreadWaitNotify {
public static void main(String args[]) {
try {
A t = new A();
t.start();
t.wait();
t.notify();
t.join();
System.out.println("End Of Main");
} catch (Exception e) {
}
}
}
私の質問は次のとおりです。
- mainに書き込む
t.wait()
と、mainはそれ以上実行されず、それ以上再開できません。どうやってするか? - 第二に、私はスレッドでも書い
wait()
ています。そのため、ループではなく、「End OfThread」のみが出力されますか?私notify()
がメインからであろうとなかろうと... - ここでmainに書き込む
notify()
と、実行が完了しません。その行にコメントしている間、実行が終了し、「EndOfMain」が出力されます。