park 전후 어느 때 unpark해도 한 번의 진행 허가가 된다

선행 unpark는 permit으로 남고 후행 unpark는 대기 중 thread를 깨웁니다.

unpark → park

permit 저장 → park 즉시 통과

park → unpark

WAITING → 깨움

unpark × 2

permit 1장 · 두 번 통과 아님

핵심: 순서 손실은 막지만 업무 조건 변경과 메모리 공개는 별도 프로토콜로 묶습니다.