2013-09-05 3 views

답변

1

notify을 찾는 것은 과정을 깨워 또는에 넣어 것이다이

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

에 대한 해답이 될 수 있습니다 실행 큐. 다른 두 옵션은 대기 대기열에 프로세스를 넣습니다.

0

대기 및 절전 모드에서는 스레드가 일시적으로 실행을 중단합니다.

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

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

전에 호출 기다려었던합니다 (가는 notifyAll의 경우 또는 스레드) 스레드에서 실행이 재개 통지합니다. 세 가지 옵션이 주어

, 가장 정확한 대답을 할 것이다 통지

2

wait -> 전화가 잠금을 보유하고 에 개체에 기다린 후 notify

에 다른 스레드에 의존 스레드

notifynotifyAll -> 알림은 스레드를 깨우고 실행 가능 대기열에 넣고 잠금에 대한 통지를 호출 한 스레드가 잠금을 해제 한 후에 실행 가능 대기열의 스레드 중 하나가 잠금을 보유합니다.

sleep -> 이름에서 알 수 있듯이 스레드의 처리가 중지되고 지정된 기간 동안 절전 모드로 전환됩니다. 누군가가 방해하거나 타임 아웃이 발생할 때까지.

그래서 대답은 notify입니다. 스레드가 멈추지 않습니다.

관련 문제