c#tcp通信,在GetStream上发送空数据

c#tcp通信,在GetStream上发送空数据,c#,network-programming,C#,Network Programming,当我使用这段代码时,它会向我的接收器发送一个空字节数组。为什么,我不写任何东西到流我只得到它。我能做些什么来防止它 public void Send() { TcpClient client = new TcpClient(); IPEndPoint serverEndPoint = new IPEndPoint( IPAddress.Parse( ip ), port ); client.Connect( serverEndPoint ); NetworkStream cli

当我使用这段代码时,它会向我的接收器发送一个空字节数组。为什么,我不写任何东西到流我只得到它。我能做些什么来防止它

public void Send()
{
  TcpClient client = new TcpClient();
  IPEndPoint serverEndPoint = new IPEndPoint( IPAddress.Parse( ip ), port );
  client.Connect( serverEndPoint );

  NetworkStream clientStream = client.GetStream();

  clientStream.Close();
  client.Close();
}



  private TcpListener tcpListener;
  private Thread listenThread;

  public void Receiver()
  {
   this.tcpListener = new TcpListener( IPAddress.Any, port );
   this.listenThread = new Thread( new ThreadStart( ListenForClients ) );
   this.listenThread.Start();
  }

  private void ListenForClients()
  {
   this.tcpListener.Start();

   while ( true )
   {
    //blocks until a client has connected to the server
    TcpClient client = this.tcpListener.AcceptTcpClient();

    Thread clientThread = new Thread( new ParameterizedThreadStart( HandleClientComm ));
    clientThread.Start( client );
    }   
  }

  private void HandleClientComm( object client )
  {
    TcpClient tcpClient = (TcpClient)client;
    NetworkStream clientStream = tcpClient.GetStream();

    tcpClient.Close();
  }

不清楚“发送空字节数组”是什么意思,但请看以下代码:

NetworkStream clientStream = client.GetStream();
clientStream.Close();
这将关闭连接。现在还不清楚你的代码打算做什么,但你似乎不太可能真的想要接受一个连接,而只是立即关闭它

handleclientcom
中也可以执行同样的操作,这次是通过关闭
TcpClient。