강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

이건호님의 프로필 이미지
이건호

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

Listener

코드 흐름에 대한 질문.

작성

·

263

2

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

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

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

답변 3

3

Rookiss님의 프로필 이미지
Rookiss
지식공유자

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


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

2

Rookiss님의 프로필 이미지
Rookiss
지식공유자

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

1

이건호님의 프로필 이미지
이건호
질문자

답변 감사합니다!

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

이건호님의 프로필 이미지
이건호

작성한 질문수

질문하기