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

CHL님의 프로필 이미지
CHL

작성한 질문수

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

RecvBuffer

RecvBuffer를 원형 큐로 만드는게 더 성능이 좋지 않나요?

해결된 질문

작성

·

376

0

RegisterRecv( ) 할 때마다 복사 연산이 되서 성능상 별로 좋지 않을 것 같은데 이렇게 하신 이유가 있을까요?

답변 2

6

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

실제 복사가 일어나는 곳은 Clean 할 때 찌끄레기를 처리하는 Array.Copy하는 부분인데,
정말 패킷이 흘러넘치는 상황이 아닌 이상 대부분 커서 리셋으로 복사없이 처리됩니다.

그리고 원형 버퍼를 사용하는 것도 다른 (정석적인) 옵션이지만,
원형버퍼도 논리적으로만 원형이지,
사실상 버퍼 끝에 도달하면 양쪽을 연결해줘야 하기 때문에
마찬가지로 복사가 아예 없다고 볼 수는 없습니다.

1

CHL님의 프로필 이미지
CHL
질문자

답변 감사합니다ㅎ

좋은 강의 해주셔서 감사합니다. 

덕분에 잘 배우고 있습니다.

언젠가 필드에서 만난다면 꼭 커피나 밥이라도 사드리고 싶은 마음입니다ㅎ 감사합니다.

CHL님의 프로필 이미지
CHL

작성한 질문수

질문하기