我已经实现了发送消息客户端-> 服务器并实际上同时连接了许多客户端。但我想要做的是,即连接 2 个客户端并让他们彼此聊天。如果第三个客户连接 - 那么他开始与其他两个客户聊天。
到目前为止,我正处于与另一个 c->s->c 分开聊天 client->server->client 的阶段。会发生什么 - 我运行 client1 并且一切正常。然后我运行client2,一切正常,但是第一个客户端停止工作,然后我在第二个客户端上获取的第一条消息是我从client1发送的最后一条消息(但实际上并没有从服务器接收回它)。所以我认为流存在问题 - 2 个客户端以某种方式获取彼此的流。这是服务器的一些部分(相关的):TheServer
HandleClientComm(object client)正在处理接收发送操作。
这是处理接收发送操作的客户端代码部分:TheClient
我进入
An unhandled exception of type 'System.OutOfMemoryException' occurred...
服务器
Byte[] bData = new Byte[BitConverter.ToInt32(bSize, 0)];
太...是的,流有问题(在我看来)。但我真的不知道如何让服务器正确区分客户端的线程。
我愿意接受任何建议。
PS我没有直接在这里发布代码,因为它会变得太长。