➊과 ➋ 두 스레드 모두 잠금을 하는 과정에서 더 이상 전진하지 못하고 정체되어 있습니다. ➊의 호출 스택을 보면 잠금을 하려고 했던 뮤텍스, 즉 임계 영역(CriticalSection)의 내용을 볼 수 있습니다.
그림 1-31에서 교착 상태가 걸린 실행 지점은 ➊이며, 이 지점에서 교착 상태에 연관된 뮤텍스 객체는 b_mutex입니다. b_mutex 내용을 봅시다.
▲ 그림 1-32 b_mutex 안의 내용
b_mutex 안의 내용을 보니 OwningThread가 16진수로 5238을 가리킵니다. 이를 10진수로 바꾸면 21048입니다. 아까 스레드 뷰를 다시 봅시다.
▲ 그림 1-33 디버거가 보여 주는 스레드들