한 대기실과 두 대기실

정확성 규칙은 유지하면서 불필요하게 깨우는 역할의 범위를 줄인다.

단일 Condition

생산자와 소비자가 섞여 signalAll로 안전성을 확보한다.

각성 범위 큼

이중 Condition

notFull과 notEmpty가 역할별 대기자를 관리한다.

대상 명확

일반 상태 전이

반대 역할 한 명이 진행할 수 있으므로 signal을 사용한다.

경쟁 감소

종료 상태 전이

양쪽의 모든 대기 조건이 바뀌므로 signalAll을 사용한다.

종료 보장
공통 규칙두 구조 모두 while 재검사와 finally 해제가 필요하다.

핵심: 대기실 분리는 정확성 규칙을 대체하지 않고 신호 대상을 정교하게 만든다.