Threaded C# Server
-
Hallo,
Nach folgendem Code baue ich einen Threaded C# Server:
http://www.switchonthecode.com/tutorials/csharp-tutorial-simple-threaded-tcp-serverFrage:
Wenn sich nun 2 Clients verbinden, wie kann ich explizit sagen, sende Client1 abc und Client2 xyz?
Ich verstehe nicht, wie ich die einzelnen Clients ansprechen kann, da ja jeder Client das selbe TcpClient Objekt bekommt ?TcpClient tcpClient = (TcpClient)client; NetworkStream ns = tcpClient.GetStream(); StreamWriter sw = new StreamWriter(ns); StreamReader sr = new StreamReader(ns);
Ich nehme mal an, ich verwechsle da was.
Könnte mich wer aufklären?Vielen Dank!
-
AcceptTcpClient() gibt dir immer ein neu verbundenes TcpClient Objekt zurück.
Die sind verschieden, nur der Name der Variable (client) ist gleich.Du kannst die clients z.B. in einer Liste sammeln.
Du musst ja deine Clients eh irgendwie "halten".Pseudo Code:
TcpClient client = serverSocket.AcceptTcpClient(); connectedClients.Add(client); // ...
Simon