1. Session::Send가 효율적이지 않은 곳은 어디입니까?
– 하나의 스레드가 RegisterSend를 호출하는 경우 다른 많은 Send 요청이 WriteLock에서 대기할 수 있습니다.
2. 왜 PacketSession이 필요한가요?
– 보낸 데이터가 한번에 모두 수신되는 것을 보장하지 못하는 TCP의 특성상 모든 데이터가 수신되었음을 확인할 수 있는 수단이 필요합니다.
3. PacketSession::OnRecv에서 헤더가 적거나 헤더만 수신되는 상황을 처리하는 방법은 무엇입니까?
– 확실하지 않다.
4. 연결된 클라이언트 수가 1000개로 증가하면 서버 브로드캐스트 충돌이 발생하는 이유와 해결 방법은 무엇입니까?
– 세션이 반복되지만 세션에 변화가 있습니다. OnDisconnect에서 세션이 제거되고 있습니다.
– 해결 방법: Disconnect에서 세션을 제거하지 말고 ProcessDisconnect에서 제거하십시오.
