✺
이해를 돕기 위해 다시 화장실을 예를 들겠습니다. 어떤 영업 사원이 있다고 가정하겠습니다. 영업 사원은 언제 전화를 받는 것이 회사 규칙입니다. 그런데 이 영업 사원은 화장실에 들어갈 때 전화를 안 받아도 된다고 회사와 약속을 했습니다. 화장실에서 중요한 용무를 봐야 하기 때문입니다. 그 조건으로 화장실 문에 들어갈 때는 비행기 모드로 바꾸고 화장실에서 나올 때는 반드시 비행기 모드를 풀어야 합니다. 여기서 전화를 인터럽트 그리고 화장실 문에 들어간 상태를 임계 영역이라고 바꿔서 생각해봅시다. 이 영업 사원은 화장실에서 용무를 볼 때 전화가 오지 않으니 방해을 안 받습니다. 스핀락을 얻어 임계 영역을 실행 중에 인터럽트를 실행을 막는 상태입니다. 임계영역이 다음과 같은 코드 흐름일 때 임계 영역에서