private void AcceptTcpClient(IAsyncResult ar)
{
try
{
TcpClient client = _tcpListener.EndAcceptTcpClient(ar);
lock (_connectionLock)
{
int connectionId = _nextConnectionId++;
var connection = new Connection(connectionId) {Connected = true};
_connections[connectionId] = connection;
var connectionHandler = new ConnectionHandler(client, connection, _clientPort);
connectionHandler.BeginConnection(DisconnectConnection);
}
}
catch (Exception e)
{
Debug.WriteLine("Error accepting new client " + e);
}
BeginAccept();
}