작성
·
220
0
저렇게 SetEvent를 주석을 달고 했을때 무한 대기상태로 들어가는건 이해가 됬습니다. 저상태에선 브레이크 포인트를 잡는다던가, 디버그 행동을 할 수가 없나요??
저는 현재 WaitForSingleobject가 쓰레드 함수가 끝날때까지 대기 하는것으로 이해하고 있습니다.
쓰레드 함수가 정상적으로 끝나는게 아닌, 외부 함수에 의해서 강제강료 했을때 무한대기 하는 상태가 발생하는데,
SetEvent를 호출하지않고 강제종료되는 경우를 고려할수있을까요?
답변 1
1
네 안 됩니다. 다른 쓰레드에서 bp를 잡으면 저기서 멈춘 상태로 나오긴 하겠지만요.
2. 질문이 잘 이해가 안 되는데 [쓰레드 함수가 끝날때까지 대기] 가 무슨 의미인지 모르겠네요
애당초 쓰레드 함수라는 것이 모호합니다.
3. WaitFor~은 무엇인가 끝나고 말고가 아니라 그냥 신호등처럼 파란불이 켜지기를 기다리는 단순한 존재입니다. 당연히 신호를 주지 않으면 영원히 대기하겠지만 그것은 애당초 설계적인 문제겠죠