using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; class MainClass { public static void Main() { TcpListener client = new TcpListener(9050); client.Start(); Console.WriteLine("Waiting for clients..."); while(true) { while (!client.Pending()) { Thread.Sleep(10000); } ConnectionThread newconnection = new ConnectionThread(client); } } } class ConnectionThread { TcpListener threadListener; public ConnectionThread(TcpListener lis){ threadListener = lis; Thread newthread = new Thread(new ThreadStart(HandleConnection)); newthread.Start(); } public void HandleConnection() { byte[] data = new byte[1024]; TcpClient client = threadListener.AcceptTcpClient(); NetworkStream ns = client.GetStream(); string welcome = "Welcome"; data = Encoding.ASCII.GetBytes(welcome); ns.Write(data, 0, data.Length); while(true) { data = new byte[1024]; int recv = ns.Read(data, 0, data.Length); if (recv == 0) break; ns.Write(data, 0, recv); } ns.Close(); client.Close(); } }