(выражается в том, что в браузере ответ приходит через раз...., если убрать sleep и не закрывать, то все ок, но соединения копятся в состоянии CLOSE_WAIT. Аналогичная ситуация если делать через Async методы.
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
class Server
{
static void Main(string[] args)
{
string ip = "127.0.0.1";
int port = 8485;
var server = new TcpListener(IPAddress.Parse(ip), port);
server.Start();
while (true)
{
var client = server.AcceptSocket();
var msg = Encoding.ASCII.GetBytes(
"HTTP/1.1 200 OK\r\nContent-Length: 0\r\n\r\n\r\n");
client.Send(msg);
Thread.Sleep(1); //!!! Почему без этого работает через раз?
client.Close();
}
}
}
Обсуждают сегодня