【发布时间】:2012-02-29 05:58:38
【问题描述】:
我想向网关(客户端)上的socket 发送消息,然后等待从网关接收消息。
另一方面,在等待时,我再次从服务器 socket 向作为客户端的网关发送消息,但在 accept()(ServerSocket) 方法上我的连接阻塞。
我想知道这是因为之前的请求正在等待使用inputStream 接收某些东西。我使用threads 来维护它并使用setReuseAddress() 来执行此操作。
我现在没有发布代码,因为我只是想知道这个逻辑是否正常,或者是否有任何逻辑可以处理从Server-Socket 发送到客户端套接字的多个请求(消息),我也不想close 套接字,因为socket 必须通过应用程序连接。
【问题讨论】:
-
必须使用套接字吗?你熟悉 Java RMI 吗? Java RMi 允许您避免这种套接字/端口方法。在客户端断开连接方面需要注意一些事项。
-
是的,我必须使用套接字。
-
请澄清您的问题。好像两边都有一个ServerSocket调用accept()?
-
ServerSocket 只在我这边,因为客户端是有人建的。所以当客户端运行它连接到我的服务器套接字。然后我向客户发送订单请求,根据该订单请求,它会向我发回一些消息。现在在这个消息传递过程中。我再次发送另一个订单请求,但连接受阻。我不熟悉RMI。但我也一定会完成的。