private void ServerThreadStart()
{
// Client Socket variable;
Socket clientSocket = null;
TCPSocketListener socketListener = null;
while (!m_stopServer)
{
try
{
// Wait for any client requests and if there is any
// request from any client accept it (Wait indefinitely).
clientSocket = m_server.AcceptSocket();
// Create a SocketListener object for the client.
socketListener = new TCPSocketListener(clientSocket, this);
// Start a communicating with the client in a different
// thread.
if (socketListener.StartSocketListener())
{
// Add the socket listener to an array list in a thread
// safe fashon.
//Monitor.Enter(m_socketListenersList);
lock (m_socketListenersList)
{
m_socketListenersList.Add(socketListener);
//Program.MainForm.AddConnection(clientSocket.RemoteEndPoint.ToString());
}
}
else
clientSocket.Disconnect(false);
}
catch (SocketException)
{
m_stopServer = true;
}
}
}