Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        private void listenForConnections()
        {
            try {
                TcpListener tcpListener = new TcpListener(IPAddress.Loopback, portNumber);
                log(SERVER_STARTING_MSG);
                tcpListener.Start();
                Console.WriteLine("[[serverstarted]] on port " + portNumber);

                while (true)
                {
                    // Accept a new connection
                    log("The server is waiting for a client to connect.");
                    Socket socketForClient = tcpListener.AcceptSocket(); // blocks here

                    if (socketForClient.Connected)
                    {
                        log("A new client connected.");

                        ClientWorkerThread worker         = new ClientWorkerThread(socketForClient, clientCount++, gui);
                        ThreadStart        clientDelegate = new ThreadStart(worker.talkToClient);
                        Thread             workerThread   = new Thread(clientDelegate);
                        workerThread.Start();
                    }
                    else
                    {
                        socketForClient.Close();
                        log("Disconnecting from client.");
                    }
                }
            }
            catch (SocketException se) {
                log(se.Message);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 
        /// </summary>
        private void listenForConnections()
        {
            try {
                TcpListener tcpListener = new TcpListener(IPAddress.Loopback, portNumber);
                log(SERVER_STARTING_MSG);
                tcpListener.Start();
                Console.WriteLine("[[serverstarted]] on port " + portNumber);

                while (true) {

                    // Accept a new connection
                    log("The server is waiting for a client to connect.");
                    Socket socketForClient = tcpListener.AcceptSocket(); // blocks here

                    if (socketForClient.Connected) {
                        log("A new client connected.");

                        ClientWorkerThread worker = new ClientWorkerThread(socketForClient, clientCount++, gui);
                        ThreadStart clientDelegate = new ThreadStart(worker.talkToClient);
                        Thread workerThread = new Thread(clientDelegate);
                        workerThread.Start();
                    }
                    else {
                        socketForClient.Close();
                        log("Disconnecting from client.");
                    }
                }
            }
            catch (SocketException se) {
                log(se.Message);
            }
        }