wait(), notify(), notifyall()

wait과 notifyall(notify) 메서드는 도익화 처리를 해서, 한 순간에 하나의 쓰레드만 호출이 가능하도록 한다.

무 메서드 wait과 notifyAll(notify)이 서로 다른 두 쓰레드에 의해서 동시에 각각 호출되는 것 조차 허용되지 않아야 함을 뜻하는 것이다. 위의 두 메서드는 동시에 호출되면 문제가 생길 수 있는 민감한 성격의 메서드이다. 따라서 동기화 블럭 또는 도익화 메서드를 이용해서 메서드 호출 문장을 도익화 처리해야 한다.
synchronized(this)
{
notifyAll();
}

synchronized(this)
{
wait();
}

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다