AddToQueue() public method

public AddToQueue ( NetPacket packet ) : void
packet NetPacket
return void
コード例 #1
0
ファイル: NetPeer.cs プロジェクト: DukeChiang/LiteNetLib
        //from user thread, our thread, or recv?
        private void SendPacket(NetPacket packet)
        {
            switch (packet.Property)
            {
            case PacketProperty.Reliable:
                DebugWrite("[RS]Packet reliable");
                _reliableUnorderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Sequenced:
                DebugWrite("[RS]Packet sequenced");
                _sequencedChannel.AddToQueue(packet);
                break;

            case PacketProperty.ReliableOrdered:
                DebugWrite("[RS]Packet reliable ordered");
                _reliableOrderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.None:
                DebugWrite("[RS]Packet simple");
                if (_peerListener.GetMaxFlowMode() == -1)
                {
                    SendRawData(packet.RawData);
                    Recycle(packet);
                }
                else
                {
                    _simpleChannel.AddToQueue(packet);
                }
                break;

            case PacketProperty.MtuCheck:
                if (!SendRawData(packet.RawData))
                {
                    _finishMtu = true;
                }
                Recycle(packet);
                break;

            case PacketProperty.AckReliable:
            case PacketProperty.AckReliableOrdered:
            case PacketProperty.Ping:
            case PacketProperty.Pong:
            case PacketProperty.Disconnect:
            case PacketProperty.MtuOk:
                SendRawData(packet.RawData);
                Recycle(packet);
                break;

            default:
                throw new Exception("Unknown packet property: " + packet.Property);
            }
        }
コード例 #2
0
ファイル: NetPeer.cs プロジェクト: chwuchang/LiteNetLib
        //from user thread, our thread, or recv?
        private void SendPacket(NetPacket packet)
        {
            switch (packet.Property)
            {
            case PacketProperty.Reliable:
                DebugWrite("[RS]Packet reliable");
                _reliableUnorderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Sequenced:
                DebugWrite("[RS]Packet sequenced");
                _sequencedChannel.AddToQueue(packet);
                break;

            case PacketProperty.ReliableOrdered:
                DebugWrite("[RS]Packet reliable ordered");
                _reliableOrderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Unreliable:
                DebugWrite("[RS]Packet simple");
                _simpleChannel.AddToQueue(packet);
                break;

            case PacketProperty.MtuCheck:
                //Must check result for MTU fix
                if (!_peerListener.SendRaw(packet.RawData, 0, packet.RawData.Length, _remoteEndPoint))
                {
                    _finishMtu = true;
                }
                Recycle(packet);
                break;

            case PacketProperty.AckReliable:
            case PacketProperty.AckReliableOrdered:
            case PacketProperty.Ping:
            case PacketProperty.Pong:
            case PacketProperty.Disconnect:
            case PacketProperty.MtuOk:
                SendRawData(packet.RawData);
                Recycle(packet);
                break;

            default:
                throw new Exception("Unknown packet property: " + packet.Property);
            }
        }
コード例 #3
0
ファイル: NetPeer.cs プロジェクト: pocketgems/LiteNetLib
        //from user thread, our thread, or recv?
        private void SendPacket(NetPacket packet)
        {
            NetUtils.DebugWrite("[RS]Packet: " + packet.Property);
            switch (packet.Property)
            {
            case PacketProperty.Reliable:
                _reliableUnorderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Sequenced:
                _sequencedChannel.AddToQueue(packet);
                break;

            case PacketProperty.ReliableOrdered:
                _reliableOrderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Unreliable:
                _simpleChannel.AddToQueue(packet);
                break;

            case PacketProperty.Fragmented:
                _fragmentChannel.AddToQueue(packet);
                break;

            case PacketProperty.MtuCheck:
                //Must check result for MTU fix
                if (!_peerListener.SendRawAndRecycle(packet, _remoteEndPoint))
                {
                    _finishMtu = true;
                }
                break;

            case PacketProperty.AckReliable:
            case PacketProperty.AckReliableOrdered:
            case PacketProperty.Ping:
            case PacketProperty.Pong:
            case PacketProperty.Disconnect:
            case PacketProperty.MtuOk:
                SendRawData(packet);
                _packetPool.Recycle(packet);
                break;

            default:
                throw new Exception("Unknown packet property: " + packet.Property);
            }
        }
コード例 #4
0
ファイル: NetPeer.cs プロジェクト: achooley/LiteNetLib
        //from user thread, our thread, or recv?
        private void SendPacket(NetPacket packet)
        {
            switch (packet.Property)
            {
            case PacketProperty.Reliable:
                DebugWrite("[RS]Packet reliable");
                _reliableUnorderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Sequenced:
                DebugWrite("[RS]Packet sequenced");
                _sequencedChannel.AddToQueue(packet);
                break;

            case PacketProperty.ReliableOrdered:
                DebugWrite("[RS]Packet reliable ordered");
                _reliableOrderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.AckReliable:
            case PacketProperty.AckReliableOrdered:
            case PacketProperty.None:
                DebugWrite("[RS]Packet simple");
                _simpleChannel.AddToQueue(packet);
                break;

            case PacketProperty.Ping:
            case PacketProperty.Pong:
            case PacketProperty.Disconnect:
            case PacketProperty.MtuCheck:
            case PacketProperty.MtuOk:
                SendRawData(packet.RawData);
                Recycle(packet);
                break;

            default:
                throw new Exception("Unknown packet property: " + packet.Property);
            }
        }
コード例 #5
0
        //from user thread, our thread, or recv?
        private void SendPacket(NetPacket packet)
        {
            NetUtils.DebugWrite("[RS]Packet: " + packet.Property);
            switch (packet.Property)
            {
            case PacketProperty.ReliableUnordered:
                _reliableUnorderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Sequenced:
                _sequencedChannel.AddToQueue(packet);
                break;

            case PacketProperty.ReliableOrdered:
                _reliableOrderedChannel.AddToQueue(packet);
                break;

            case PacketProperty.Unreliable:
                _simpleChannel.AddToQueue(packet);
                break;

            case PacketProperty.ReliableSequenced:
                _reliableSequencedChannel.AddToQueue(packet);
                break;

            case PacketProperty.AckReliable:
            case PacketProperty.AckReliableOrdered:
            case PacketProperty.Ping:
            case PacketProperty.Pong:
                SendRawData(packet);
                _packetPool.Recycle(packet);
                break;

            default:
                throw new InvalidPacketException("Unknown packet property: " + packet.Property);
            }
        }