我有一个标准的客户端/服务器设置。
我想要构建的程序很像一个邮件办公室(这是我的服务器)。多个人(具有 ObjectOutputStream 的客户端)将带有附加地址的办公室(具有单个 ObjectInputStream 的服务器)邮件交给办公室,然后办公室将邮件发送到它应该去的地方。如果可能的话,我希望在服务器中有一个 ObjectInputStream
阻塞,等待“邮件”从 任何 ObjectOutputStream 传入,然后将“邮件”发送到它应该去。这样我就可以拥有一个完全致力于接收和发送数据的线程。
我将为每个人的客户端及其 ObjectOutputStream 提供一个线程,但不希望服务器中也需要一个匹配的线程来与每个人进行通信。我对这个想法很感兴趣,因为我发现构建大量线程来单独处理连接是多余的,而在我的情况下,单个线程可能只发送一次数据。
这可行吗?或者只是愚蠢?
最佳答案
使用Java消息服务的JMS队列,是本例的设计模式。 http://en.wikipedia.org/wiki/Java_Message_Service
关于java - 是否可以使用多个 java ObjectOutputStream 对象写入单个 java ObjectInputStream 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16142506/