• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

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

21.12.20 22:26 작성 조회수 131

0

안녕하세요!

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

그래도 질문드려봅니다.

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

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

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

Send 함수를 호출하면

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

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

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

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

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

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

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

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

답변 1

답변을 작성해보세요.

1

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

literate_t님의 프로필

literate_t

질문자

2021.12.20

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