• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

구글 프로터버퍼 Error에 대한 질문입니다.

21.08.11 08:06 작성 조회수 458

0

안녕하세요 Rookies님
어제도 질문 남겼었는데 EnterGame을 처음에 많이 했을 때 프로토버퍼에서 이러한 에러가 나는데
어떠한 상황을 의심할 수 있는 건가요?
OnRecvCompleted Failed Google.Protobuf.InvalidProtocolBufferException: While parsing a protocol message, the input ended unexpectedly in the middle of a field.  This could mean either that the input has been truncated or that an embedded message misreported its own length.
너무 많은 처리를 하려고 하거나 혹은 필드를 15개 이상 사용할 때 날 수 있는 에러인가요?
보통 어떠한 경우에 이러한 에러가 나는지 궁금합니다..!

답변 1

답변을 작성해보세요.

0

기본적으로 패킷엔 데이터를 무한으로 넣을 수는 없고
버퍼 최대 크기를 정해주고 그 이상으로 넘어가면
크래시를 내게 안전처리를 한 다음 패킷을 쪼개서 보내줘야 합니다.

protobuf 최대 필드 개수는 테스트를 해보거나 문서를 검색해보시기 바랍니다.
저도 그 정도로 많이 넣어본 적은 없어서 잘 모르겠네요.
최대 크기 문제가 아니라면, 패킷을 만들고 파싱하는 과정의 문제일 수도 있긴 합니다.
그런데 C# 시리즈 강의 기반으로 저도 프로젝트를 만들어본 적이 있었는데 별 문제 없었습니다.