검사 후 쓰기와 CAS 획득

스핀 락의 소유권은 false에서 true로의 원자 전이로 결정된다.

volatile 검사

비어 있음을 본 두 스레드가 모두 true를 쓸 수 있다.

상호 배제 실패

CAS 획득

기대값이 false인 한 스레드만 true 교체에 성공한다.

단일 소유자

실패 스핀

잠들지 않고 다음 획득을 반복한다.

CPU 사용

표준 Lock

경쟁자를 park하고 취소·조건을 제공한다.

범용 선택
판정스핀은 대기가 매우 짧다는 근거가 있을 때만 검토한다.

핵심: volatile 검사와 대입은 원자적 잠금 획득이 아니다.