/// <summary> /// The main server loop. Listening on the selected port occurs here, and accepting incoming connections /// </summary> public void Start() { isRunning = true; try { serverSocket = new TcpListener(IPAddress.Any, Port); serverSocket.Server.NoDelay = true; serverSocket.Start(); } //The port is being used, and serverSocket cannot start catch (Exception ex) { Console.WriteLine(ex.ToString()); //Close(); return; } try { //SocketError error = SocketError.AccessDenied; localClient = serverSocket.AcceptSocket(); localClient.NoDelay = true; //Disable the Naggle algorithm IPAddress localIP = IPAddress.Parse(((IPEndPoint)localClient.RemoteEndPoint).Address.ToString()); Console.WriteLine(localIP); stream = new NetworkStream(localClient, true); reader = new BigEndianBinaryReader(stream); writer = new BigEndianBinaryWriter(stream); zlibWriter = new ZlibCompressedWriter(stream); clients.Add(localClient); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } }
/// <summary> /// The main server loop. Listening on the selected port occurs here, and accepting incoming connections /// </summary> public void Start() { isRunning = true; try { serverSocket = new TcpListener(IPAddress.Any, Port); serverSocket.Server.NoDelay = true; serverSocket.Start(); } //The port is being used, and serverSocket cannot start catch (Exception ex) { Console.WriteLine(ex.ToString()); //Close(); return; } try { //SocketError error = SocketError.AccessDenied; localClient = serverSocket.AcceptSocket(); localClient.NoDelay = true; //Disable the Naggle algorithm IPAddress localIP = IPAddress.Parse(((IPEndPoint)localClient.RemoteEndPoint).Address.ToString()); Console.WriteLine(localIP); stream = new NetworkStream(localClient, true); reader = new BigEndianBinaryReader(stream); writer = new BigEndianBinaryWriter(stream); zlibWriter = new ZlibCompressedWriter(stream); clients.Add(localClient); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } }