我目前正在尝试做的是使用silverlight为irc创建一个非常基本的网络聊天。.NET TCP客户机/服务器通信问题
基本上我如何做到这一点是有一个tcp服务器侦听来自silverlight的连接。当客户端连接时,它会创建一个到irc的新连接,并通过服务器应用程序将数据传递到客户端/ irc。
我已经得到它为一个客户端连接工作正常,但只要两个(或更多)客户端连接多个连接到irc,但从客户端传递的所有数据只是通过最新的irc连接(如果这就说得通了)。
例如客户端1,客户端2和Client3都连接到IRC,但无论是谁发送的数据这一切都通过Client3。
它可以识别来自不同的客户端发出的数据在客户端和服务器应用程序之间,我认为问题在于我已经连接到IRC的方式中。当TCP服务器接受一个新的客户端时,一个新的线程被用来监听传入的数据,并且从那里新的线程被连接到IRC。我确信那是存在问题的地方,但我现在很困惑自己,想知道是否有人能帮我找出解决方案。
编辑:我觉得这个问题是,它不能区分具体的客户端使用的线程,所以它只是通过最新的一个发送。这甚至可以完成?
欢迎来到SO。请不要在标题和标签中复制“C#”。此外,您的问题是.NET,而不是C#编程语言。 – 2010-05-29 23:11:53
你可能应该发布一些关键代码。 – m0s 2010-05-30 03:10:24