Пример #1
0
        public static void SendPacketToClient(byte[] packet, int length)
        {
            lock ( _clientSendLock )
            {
                while (DateTime.Now < _nextPacketRecvTime)
                {
                    Thread.Sleep(1);
                }

                InternalPacketReceivedEvent?.Invoke(packet, length);

                _sendToClient?.Invoke(ref packet, ref length);

                _nextPacketRecvTime = DateTime.Now + PACKET_RECV_DELAY;
            }
        }
Пример #2
0
        public static void SendPacketToClient(byte[] packet, int length)
        {
            try
            {
                lock ( _clientSendLock )
                {
                    while (DateTime.Now < _nextPacketRecvTime)
                    {
                        Thread.Sleep(1);
                    }

                    InternalPacketReceivedEvent?.Invoke(packet, length);

                    _sendToClient?.Invoke(ref packet, ref length);

                    _nextPacketRecvTime = DateTime.Now + PACKET_RECV_DELAY;
                }
            }
            catch (ThreadInterruptedException)
            {
                // Macro was interupted whilst we were waiting...
            }
        }
Пример #3
0
        public static void SendPacketToClient(byte[] packet, int length)
        {
            InternalPacketReceivedEvent?.Invoke(packet, length);

            _sendToClient?.Invoke(ref packet, ref length);
        }