• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

코드 흐름에 대한 질문.

20.11.25 00:13 작성 조회수 154

2

안녕하세요. 강의 유익하게 잘 듣고있습니다. 궁금한 점이 있어서 질문을 올려봅니다.

영상 거의 끝부분에 보면, 서버 프로그램의 while문에서 무한 루프를 돌다가 이벤트가 발생하면 OnAcceptHandler 를 실행시키는 형식으로 되어있는데,

질문은, 서버 프로그램은 Main함수의 while문에서 무한 루프에 빠져있는데, 이벤트가 발생하면 어떻게 while문에서 탈출해서 OnAcceptHandler 함수로 뿅하고 가서 실행하는지 궁금합니다.

답변 3

·

답변을 작성해보세요.

3

ㅎㅎㅎ 무한루프 지옥에서는 아무도 빠져나올 수 없습니다.
메인 쓰레드가 아닌 다른 쓰레드가 처리하는 것이죠!
실제로 OnAcceptHandler에 BreakPoint을 걸어두고
쓰레드 상황을 살펴보시면 됩니다.


위 부분을 바꾸면 쓰레드를 왔다갔다 할 수 있습니다.

2

네 비슷합니다.
C#에선 쓰레드 풀에서 관리되는 쓰레드 중 하나를 꺼내쓰게 됩니다.
(C++이었다면 직접 쓰레드를 새로 만들어서 등록을 해놔야 합니다.)

1

이건호님의 프로필

이건호

질문자

2020.11.25

답변 감사합니다!

이벤트 함수를 호출하기 위해 운영체제에서 자동적으로 스레드를 하나 만드나 보네요.