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

literate_t님의 프로필 이미지
literate_t

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

RecvBuffer

sendEvent 객체가 해제되어 버립니다.

작성

·

197

0

안녕하세요!

이런 종류의 질문은 답을 거의 못 들을 것을 알지만..

그래도 질문드려봅니다.

디버그 모드에서 오랫동안 켜둔 적은 없어서

언제부터 생긴 오류인지는 정확히 모릅니다만.

클라이언트가 보낸 걸 받아서 OnRecv()에서

Send 함수를 호출하면

RegisterSend 함수를 호출하잖아요~?

sendEvent 포인터가 날아가 버리기 때문에

WSASend 함수에서 죽어버립니다.

이 오류는 바로 일어날 때도 있고

1분 정도 지나서 일어날 때도 있습니다.

레퍼런스를 add해주고 release 해주는 곳의 실수는 없는 것 같은데....분명 어딘가에 문제가 있겠지요🥲

혹시 메모리 pool 관련한 오류일 수도 있을까요?

xnew가 제대로 안 됐을 가능성도 있을까요?

답변 1

1

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

예상하신대로 위 내용만으로는 알 수 없습니다.
refCount 관리에서 뭔가 꼬여서 해제된 것으로 예상되긴 합니다.
강의 코드를 다운받아 동일하게 실행해도 문제가 있는지 확인이 필요하고
어딘가 다른 부분이 있을 것으로 생각됩니다.

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

늦은 시간에 답변 감사드립니다. 먼저 ref count부터 살펴보겠습니다. 해결되면 댓글 또 남길게요💪🏻

literate_t님의 프로필 이미지
literate_t

작성한 질문수

질문하기