C#을 통해 서버를 만들었는데요, 아래와 같이 함수들을 받고 있습니다.
new NetServer {
ClientJoinHandler = OnClientJoinHandler,
ClientLeaveHandler = OnClientLeaveHandler,
ClientOnlineHandler = OnClientOnlineHandler,
ClientOfflineHandler = OnClientOfflineHandler
}
유저가 접속하고 서버가 OnClientJoinHandler
를 받으면 (ex. HostID = 9 ), 하나의 클라이언트에 대하여 OnClientLeaveHandler
를 호출 받기 전에는 OnClientJoinHandler
가 중첩되어 콜을 받지 않을 거라 생각했는데, 테스트 플레이 중 문제가 발생하였습니다.
제 클라이언트가 서버에 접속되어 OnClientJoinHandler
(HostID = 9)가 호출된 후 잘 플레이를 하다가 인터넷 신호 문제인지, OnClientLeaveHandler
호출없이 다시 한번 OnClientJoinHandler
(HostID = 7)가 호출되었습니다.
위 둘은 같은 클라이언트인데, 위와 같이 프라우드넷 내부적으로 OnClientLeaveHandler
호출 없이 같은 클라이언트에 대하여 OnClientJoinHandler
가 중첩되어 호출될 수도 있는 것인지 궁금합니다. (HostID = 9를 받고, 플레이 중 약 1분 정도 후에 HostID = 7로 다시 한번 OnClientJoinHandler가 호출된 상황입니다. 이 사이에 OnClientLeaveHandler은 호출되지 않았습니다.)