internal void OnPacket(UdpBitStream buffer) { recvTime = socket.GetCurrentTime(); if ((buffer.Data[0] & 1) == 1) { OnObjectReceived(buffer); } else { OnCommandReceived(buffer); } }
internal void OnPacket(UdpStream buffer) { // track stats stats.PacketReceived((uint)buffer.Length >> 3); socket.Stats.PacketReceived((uint)buffer.Length >> 3); // set recv time of for last packet recvTime = socket.GetCurrentTime(); if ((buffer.Data[0] & 1) == 1) { OnObjectReceived(buffer); } else { OnCommandReceived(buffer); } }
internal void OnPacket(UdpStream buffer) { // track stats stats.PacketReceived((uint)buffer.Length >> 3); socket.Statistics.PacketReceived((uint)buffer.Length >> 3); // set recv time of for last packet recvTime = socket.GetCurrentTime(); //需要转顺序. int firtInts = IPAddress.NetworkToHostOrder(BitConverter.ToInt32(buffer.Data, 0)); //if ((buffer.Data[0] & 1) == 1) if ((firtInts & 1) == 1) { OnObjectReceived(buffer); } else { OnCommandReceived(buffer); } }
internal UdpConnection(UdpSocket sock, UdpConnectionMode m, UdpEndPoint ep) { socket = sock; mode = m; endpoint = ep; networkRtt = socket.Config.DefaultNetworkPing; aliasedRtt = socket.Config.DefaultAliasedPing; mtu = sock.Config.DefaultMtu; alwaysSendMtu = sock.Config.DefaultAlwaysSendMtu; serializer = sock.CreateSerializer(); state = UdpConnectionState.Connecting; recvTime = socket.GetCurrentTime(); sendTime = recvTime; stats = new UdpConnectionStats(); sendWindow = new UdpRingBuffer <UdpHandle>(sock.Config.PacketWindow); }
internal UdpConnection(UdpSocket sock, UdpConnectionMode m, UdpEndPoint ep) { socket = sock; mode = m; endpoint = ep; networkRtt = socket.Config.DefaultNetworkPing; aliasedRtt = socket.Config.DefaultAliasedPing; mtu = sock.Config.DefaultMtu; alwaysSendMtu = sock.Config.DefaultAlwaysSendMtu; serializer = sock.CreateSerializer(); state = UdpConnectionState.Connecting; recvTime = socket.GetCurrentTime(); sendTime = recvTime; stats = new UdpConnectionStats(); sendWindow = new UdpRingBuffer<UdpHandle>(sock.Config.PacketWindow); }