Ожидание данных от сервера. net Tcp - PullRequest
0 голосов
/ 19 июня 2020

У меня есть клиент-серверное приложение Tcp. Клиент записывает данные в поток и ждет данных от сервера.

Но сервер работает около 10-15 секунд, так как лучше клиенту ждать данных с сервера? Поместить какой-нибудь "официантский" метод в фоновый поток или усыпить клиента на какое-то время?

Клиент:

 client.Connect(ip, serverPort);
                Thread.Sleep(500);
                using (NetworkStream stream = client.GetStream())
                {
                    XmlSerializer xmlSerializer = new XmlSerializer(user.GetType());
                    xmlSerializer.Serialize(stream, user);
                    Thread.Sleep(250);
                    //WaitSignal(client);
                }

Сервер:

         TcpListener listener = new TcpListener(ip, serverPort);
         string msg = "Hello;"
         listener.Start();
            while (true)
            {
                Console.WriteLine("Wait...");
                TcpClient client = listener.AcceptTcpClient();
                using (NetworkStream stream = client.GetStream())
                 {
                  //read bytes from stream and do some work

                   byte[] data = Encoding.ASCII.GetBytes(msg);
                   stream.Write(data, 0, data.Length);
                 }
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...