在套接字编程中等待回复

时间:2014-04-02 03:29:26

标签: java sockets

我正在打开和Socket连接,然后我需要在继续之前回复服务器的结果。

While(true)
{
Receive message from Client
Process message.
Send query to client .
//wait for message
Receive the result from client.
}

但是当客户回复时,在步骤1收到消息但我需要在步骤4接收消息。我无法理解如何编程。我准备好了基本的服务器和客户端代码。有人可以指出我正确的方向。

2 个答案:

答案 0 :(得分:1)

While(true)
{
//wait for message - you should receive message in one point
Receive message from Client
Process message.
if (message==1) Send query to client .
if (message==2) This is result from client

}

UPD

您的架构不太清楚,但您将始终在第一步收到消息。也许您需要使用阻止调用或其他解决方案。例如

3 step:
Send query to client.
wait() // blocking call - waiting result

1 step:
if (message==2) //This is result from client
pass reply to 3 step(another thread)

答案 1 :(得分:-1)

  

在步骤1收到消息,但我需要在步骤4接收消息。

这样做。

  

我无法理解如何编程

以与编程步骤1相同的方式编程步骤4。