コード例 #1
0
ファイル: TcpServer.cs プロジェクト: radiaku/csharptest-net
        private void ProcessRequest(TcpClientConnection client)
        {
            EventHandler <TcpClientEventArgs> handler = OnDataRecieved;

            if (handler == null)
            {
                client.Close();
            }
            else
            {
                if (client.BytesDesired <= client.BytesAvailable)
                {
                    client.BytesDesired = 0;
                    handler(this, client);
                }
            }

            if (client.ReadOffset < ushort.MaxValue / 2 && client.ReadBuffer.Length > ushort.MaxValue)
            {
                Array.Resize(ref client.ReadBuffer, client.ReadOffset + 1024);
            }

            if (!client.IsClosed)
            {
                try
                {
                    client.FlushWrite();
                }
                catch
                { client.Close(); }
            }
        }
コード例 #2
0
ファイル: TcpServer.cs プロジェクト: hivie7510/csharptest-net
        private void ProcessRequest(TcpClientConnection client)
        {
            EventHandler<TcpClientEventArgs> handler = OnDataRecieved;
            if (handler == null)
                client.Close();
            else
            {
                if (client.BytesDesired <= client.BytesAvailable)
                {
                    client.BytesDesired = 0;
                    handler(this, client);
                }
            }

            if (client.ReadOffset < ushort.MaxValue / 2 && client.ReadBuffer.Length > ushort.MaxValue)
                Array.Resize(ref client.ReadBuffer, client.ReadOffset + 1024);

            if (!client.IsClosed)
            {
                try
                {
                    client.FlushWrite();
                }
                catch
                { client.Close(); }
            }
        }