0

多肢選択問題 (1 つだけが正しい) テストでこの質問をされましたが、これに対する答えが何であるかわかりません。

which of these will not cause the thread to stop ?  
wait,notify,sleep,One more option provided(i dont remember)

私はこれらをかなり理解していますが、この質問の答えが何であるかわからず、同じものを探しています

4

3 に答える 3

2

wait--> スレッドは、ロックを保持しているオブジェクトの待機を呼び出し、他のスレッドに依存しますnotify

notifyそしてnotifyAll--> 通知はスレッドを起動し、それらを実行可能なキューに入れます。ロックの通知を呼び出したスレッドがロックを解放した後、実行可能なキューのスレッドの 1 つがロックを保持します。

sleep--> 名前が示すように、スレッドの処理を停止し、指定された期間スリープ状態にします。誰かが中断するか、タイムアウトが発生するまで。

したがって、答えはnotify、スレッドが停止することはありません。

于 2013-09-05T12:26:15.850 に答える
1

notifyプロセスを起動するか、実行キューに入れます。あなたが指定した他の2つのオプションは、プロセスを待機キューに入れます。

于 2013-09-05T12:15:23.483 に答える
0

待機とスリープにより、スレッドは一時的に実行を停止します。

http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Thread.html#sleep%28long%29

http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait%28%29

Notify は、前に待機が呼び出されたスレッド (notifyAll の場合はスレッド) で実行を再開します。

3 つのオプションがある場合、notify が最も正確な答えになります。

于 2013-09-05T12:19:01.913 に答える