0

我正在使用 TcpClient 连接到套接字,下面是示例代码,我连接到套接字一次以保留连接会话 ID,然后我继续从套接字发送和接收消息,直到找到有效消息,然后我停止:

// client is a global object to retain connection session id
TcpClient client = new TcpClient("127.0.0.1", 1800);

public void Connect()
{
    message = "First message"; // first message

    do 
    {
       Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);         

       NetworkStream stream = client.GetStream();

       stream.Write(data, 0, data.Length);    

       data = new Byte[256];

       String responseData = String.Empty;

       Int32 bytes = stream.Read(data, 0, data.Length);
       responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);

    } while (message = "valid") // loop untill message is valid

    stream.Close();
    client.Close();
}

我的问题是如何在我的代码中有效地使用 TcpClient.ReceiveTimeout 和 TcpClient.SentTimeout 20 秒?

我是否使用 TcpClient 连接做正确的事情以保留连接会话 ID?

谢谢你。

4

0 回答 0