我正在用Java开发聊天应用程序,允许更多用户连接到服务器。我设法在客户端之间建立通信,但问题是当客户端第一次发送消息时服务器收到它并将其发送到目标客户端。但是,当同一个客户端第二次发送消息(依此类推)时,服务器会收到它第一次接收的消息,因此目标客户端会一遍又一遍地接收相同的消息......我发送我在另一个类中定义的消息类型的对象。
我用谷歌搜索了一下,发现问题出在流中,应该在每个数据通过流后重置。输出流可以重置,但它确实有帮助。当我尝试重置输入流时,出现错误。我没主意了,有人有想法吗?
听起来你需要调用 ObjectOutputStream.reset()。请参阅Jqvadoc了解原因。