public void Start(ClientWorkDelegate clientWork) { Listener = new TcpListener(IPAddress.Any, Port); Listener.Start(); IsActive = true; Thread thread = new Thread(WaitConnections); thread.Start(clientWork); }
public void WaitConnections(object clientWorkDelegateObj) { ClientWorkDelegate clientWork = clientWorkDelegateObj as ClientWorkDelegate; Console.WriteLine("Waiting for connections..."); while (IsActive) { TcpClient client = Listener.AcceptTcpClient(); Console.WriteLine("New connection!"); Thread thread = new Thread(clientWork.Invoke); thread.Start(client); } }