강의

멘토링

로드맵

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

김지수님의 프로필 이미지
김지수

작성한 질문수

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

Listener

RegisterAccept에서 pending 여부 판단에 대하여

해결된 질문

작성

·

191

1

안녕하세요!! pending 관련하여 질문드립니다!!

void RegisterAccept에서 굳이 

if(pending ==  false)

   OnAcceptCompleted(null, args);

를 넣어주는 이유는 무엇인가요??

설명에서는 정말 쓰레드가 할일이 없어서 바로 처리해줄 상황을 생각해서 넣어주신거라고 하셨는데 

이 부분을 없애도  args.Completed 이벤트 발생 시  문제 없이 OnAcceptCompleted 를 불러오던데 굳이 넣어주신건 성능 개선차원인가요??

퀴즈

62%나 틀려요. 한번 도전해보세요!

네트워크 기초 이론 학습이 서버 프로그래밍에 중요한 이유가 무엇일까요?

서버 하드웨어 선택에 도움이 되어서

동시 접속 처리 및 해킹 방어 등 안정성 확보를 위해

데이터베이스 설계를 더 효율적으로 할 수 있어서

클라이언트 UI 디자인 실력을 향상시켜서

답변 2

1

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

성능 개선 차원이 아니고 API가 그렇게 되어 있습니다.
Accept, Send, Recv 모두 비동기이긴 하지만 return값이 false이면
우리가 콜백 함수롤 직접 호출해줘야 합니다.

0

김지수님의 프로필 이미지
김지수
질문자

감사합니다!!

김지수님의 프로필 이미지
김지수

작성한 질문수

질문하기