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

작성자 없음

작성자 정보가 삭제된 글입니다.

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

Connector

Connector.Connect 질문입니다.

작성

·

355

0

클라에서 Connector를 통해서 연결시도를 할 때, Connector에게 endPoint를 전달합니다

 

Connector에서는 socket에 endPoint.AddressFamily를 전달하는데, 제가 생각하는 것은 IP주소 '만' 전달합니다.

뒤에 SocketAsyncEventArgs args 변수를 선언하고

args.RemoteEndPoint에 endPoint를 한 번 더 전달합니다.

socket.ConnectAsync할 때 args를 전달합니다.

헷갈리는 부분은 endPoint를 두번 전달하는 것입니다.

 

socket에는 IP주소'만' 들어있어서 포트번호를 모르니 args.RemoteEndPoint에 port번호 포함 주소를 다시 준 것 인가요?

답변 1

1

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

그 부분은 딱히 심오하게 이해하는게 아니고 그냥 그렇습니다.
우리가 endpoint를 알고 있다고 그 주소로 알아서 접속하는게 아니고,
특정 함수를 호출할 때 인자로 넘겨줘야 비로소 그 주소로 접속을 하는 것일겁니다.

C# 네트워크 라이브러리 자체에서
SocketAsyncEvent의 RemoteEndPoint을 채워서
ConnectAsync를 호출하도록 명시하기 때문에 전달을 해준겁니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기