У меня есть сервер, который слушает подключение к сокету:
public class Server
{
private Socket _serverSocket;
public Server()
{
_serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
_serverSocket.Bind(new IPEndPoint(IPAddress.Any, 1234));
_serverSocket.Listen(1);
}
public void Start()
{
_serverSocket.BeginAccept(HandleAsyncConnectionMethod, null);
}
public void Stop()
{
//????? MAGIC ?????
}
//... rest of code here
}
Каков правильный (чистый) способ закрыть сокет?
Достаточно ли вызвать:
_serverSocket.Disconnect(true);
в методе Stop()? или есть ли другая работа, которая должна произойти, чтобы закрыть соединение чисто?