• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

_onAcceptHandler.Invoke(args.AcceptSocket); 에 질문이 있습니다.

21.10.23 00:36 작성 조회수 218

0

안녕하세요 복습 하면서 궁금한 점이 생겨서요 _onAcceptHandler.Invoke(args.AcceptSocket) 이 코드 부분을 통해 listener 에서 연결해준 대리자가 program 에 있는 OnAcceptHandler 라는 함수를 실행시켜서 대리자가 함수에 맞춰서 보내고 받는 것이라고 이해했습니다. 혹시 제가 이해한게 맞다면 처음 제가 쓴 문법이 어떻게 OnAcceptHandler를 실행시키는 건가요? 제가 생각하기에는 SocketAsyncEventArgs 와 관련이 있을 거 같은데 정확한 답을 알고 싶어서요. 혹시 마지막으로 session.Onconnected(args.AcceptSocket.RemoteEndpoint); 부분인데요 RemoteEndPoint를 왜 넣는 건가요? 앞에 endpoint는 네트워크 연결이라는 것을 알겠지만 이건 모르겠네요.....

답변 1

답변을 작성해보세요.

1

Listener의 Init에서 delegate (Action)을 연결해주고 있기에 가능합니다.
C#의 delegate 문법에 대해 공부를 하고 오시면, 해당 부분이 쉽게 이해 가능합니다.
(C++로 치면 함수 포인터입니다)

감사합니다. 강사님 ~