condition loop가 spurious return을 견디는 순서

업무 상태와 CPU 대기 수단을 분리해 반복 확인한다.

  1. Condition 확인

    open이 true면 성공한다

    business truth
  2. park

    false일 때 core를 놓는다

    wait
  3. 반환 원인

    permit·interrupt·spurious 중 하나다

    unknown
  4. 재검사

    condition과 flag를 다시 읽는다

    safe loop

핵심: park가 돌아왔다는 사실만으로 준비 완료를 선언하지 않는다.