임계 영역이 예외로 끝나도 finally가 정확히 한 번 lock을 해제해야 합니다.
소유권 획득
보호 코드 진입
불변식 확인
상태 변경
항상 해제
핵심: lock 호출은 try 밖에 두어 획득 실패 뒤 잘못된 unlock을 피합니다.