자바기초(쓰레드)

bitna's study note·2022년 5월 30일
0

자바

목록 보기
92/119

5월 30일 쓰레드 보충정리_2

1.동기화는 한번에 한쓰레드만 임계영역에 들어갈수 있기 때문에 효율이 떨어진다.이것을 개선하기위해 wait(), notify()를 사용한다.
(1)wait()는 기다리기
(2)notify()는 통보

2.wait(), notify()는 Object클래스에 정의되어 있으며,동기화 블럭 내에서만사용 할수 있다.

3.A쓰레드가 락을 들고가서 작업을 하다가 작업진행이 더이상 안되고 무한루프에서 놀고 있으면 wait() 를 이용하여 락을 반납하게 하고 잠깐 대기실에 머물게 한후에 반납한 락을 B쓰레드가 락을 들고 작업을 다 진행후에 notify()을 A쓰레드에게 알려주면 A쓰레드가 락을 다시들고 대기실을 빠져나와 작업을 진행한다.

4.notify()는 대기중인 쓰레드중의 하나 를 깨우고,
notifyAll()는 대기중인 모든 쓰레드를 깨운다.

profile
좋은개발자가 되기위한 삽질기록 노트

0개의 댓글

관련 채용 정보