public void AddClient(ClientPeer peer) { if (!mClientDic.TryAdd(peer.getPort(), peer)) { DebugSystem.LogError("AddClient Error"); } }
public void ReceiveCheckPackage(NetUdpFixedSizePackage mPackage) { //DebugSystem.Log ("Server ReceiveInfo: " + mPackage.nOrderId + " | " + mPackage.nGroupCount + " | " + mPackage.Length); if (ServerConfig.bNeedCheckPackage) { PackageCheckResult mResult = new PackageCheckResult(); if (bClient) { mResult.NWhoOrderId = (UInt32)(2 << 16 | mPackage.nOrderId); } else { mResult.NWhoOrderId = (UInt32)(1 << 16 | mPackage.nOrderId); } NetUdpFixedSizePackage mCheckResultPackage = mUdpPeer.GetUdpSystemPackage(UdpNetCommand.COMMAND_PACKAGECHECK, mResult); CheckPackageInfo mCheckInfo = mCheckPackagePool.Pop(); mCheckInfo.nReSendCount = 0; mCheckInfo.mPackage = mCheckResultPackage; mCheckInfo.mTimer.restart(); mWaitCheckReceiveDic.TryAdd(mPackage.nOrderId, mCheckInfo); mUdpPeer.SendNetPackage(mCheckResultPackage); CheckReceivePackageLoss(mPackage); } else { #if !Test if (ServerConfig.IsLocalAreaNetWork) { if (nCurrentWaitReceiveOrderId != mPackage.nOrderId) { DebugSystem.LogError("服务器端 丢包: " + mUdpPeer.getPort() + " | " + nCurrentWaitReceiveOrderId); } else { AddReceivePackageOrderId(); } } #endif CheckCombinePackage(mPackage); } }