관리 메뉴

有希

Session#4 본문

프로그래밍/C# 게임서버

Session#4

有希. 2021. 9. 9. 16:33

이벤트를 처리하는 방법 2가지

1. EventHandler 생성하여 연결

2. Session을 상속받은 클래스에서 처리 <- 이 방법을 사용한다.

Sesison을 abstract로 만들고 가상 함수 4가지를 만들어준다. <- 상속시키기 위함

OnConnected(Endpoint endPoint)

OnRecv(ArraySegment<byte> buffer)

OnSend(int bytes)

OnDisconnected(EndPoint endpoint)

서버엔진에 있는 함수들을 직접 사용하지 않고 인터페이스로 시켜 조작한다.

서버 호출을 하고 Session을 다룰 클래스에서 Session을 상속받을 GameSession클래스를 작성해준다.

4개 함수 오버라이드 해주고.

각자의 함수는 connect, OnRecvCompletd, OnSendCompleted, Discconect 함수 내부에 위치시켜준다. 이 4개의 override된 함수가 우리 입맛에 맞게 수정된 채로, 서버에서 4개 함수를 수행 해줄때 같이 수행해준다.

일단 여기서는 서버 엔진에 있던 OnRecvCompleted에서 해주던 일들을 OnRecv로 옮겨주면 된다.

그리고 이런 작업들이 엔진과 컨텐츠를 분리하는 작업이다.

 

'프로그래밍 > C# 게임서버' 카테고리의 다른 글

RecvBuffer  (0) 2021.09.17
Connector  (0) 2021.09.17
Session#3  (0) 2021.09.09
Session#2  (0) 2021.09.09
Session#1  (0) 2021.09.09