SendQueue의 종료시점 및 게임 정보 저장 방법 문의

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 뒤끝 SDK 버전 : 가장 최신 버전입니다
  • 프로젝트명 : 전직알바 현용사
  • 스테이터스 코드 :
  • 에러 코드 :
  • 에러 메시지 :smile:

방치형 게임 예제 중 BackendManager 클래스에서 OnApplicationQuit에서 UpdateAllGameData(null) 를 하려고 했으나 SendQueue 클래스의 종료 시점에 따라 저장이 되는 경우도 있고 안되는 경우도 있는 문제가 생겼습니다.

OnApplicationQuit이나 OnApplicationPause에서 서버저장을 하는 것이 별로 좋은 생각이 아닐까요?

추가 :

void OnApplicationPause(bool isPause)
{
    if (isPause == false)
    {
        SendQueue.ResumeSendQueue();
    }
    else
    {
        UpdateAllGameData(null);
        while (SendQueue.UnprocessedFuncCount > 0)
        {
        }

        SendQueue.PauseSendQueue();
    }
}


void OnApplicationQuit()
{
    UpdateAllGameData(null);
    while (SendQueue.UnprocessedFuncCount > 0)
    {
        // 처리
    }

    BackEnd.SendQueue.StopSendQueue();
}

SendQueueMgr라는 것이 OnApplicationQuit에서 종료를 하고 있길래 이런식으로 수정했습니다. 이런식으로 사용하는 것은 옳을까요? 참고로 저희가 만드는 게임은 일반적인 방치형 키우기 게임입니다

안녕하세요 개발자님.
OnApplicationPause 또는 OnApplicationQuit 발생 시,
게임이 종료 또는 비활성화 되면서 게임에 대한 쓰레드 또한 작동이 중지되거나 원활하게 작동하지 않기에 100% 저장이 된다고는 보장하기엔 어려움이 있습니다.

말씀해주신 것과 같이 종료 함수에서 데이터를 저장하도록 하기보다는
주기적으로 데이터가 저장되도록 하고,
외에도 유저들이 올바른 방법(게임 내 게임 종료 버튼을 눌러 데이터을 저장)으로 게임을 종료하도록 유도하시는 것을 추천드립니다.