네 요소 중 하나라도 다른 객체나 다른 조건을 사용하면 신호 유실과 불변식 위반이 생깁니다.
상태 보호
empty/full/closed
lock release
상태 변경 알림
취소 경로
핵심: 취소는 정상 데이터로 위장하지 않고 interrupt 또는 closed 상태로 표현합니다.