(Winsock TCP编程)如何确定是否有要接收的消息?

时间:2015-03-13 19:09:58

标签: sockets networking tcp

我已经建立了一个TCP服务器和一个客户端,但我被困在一个非常简单的事情上。

有两个功能,“recv()”和“send()”。 “recv()”可以返回不同的值,如“SOCKET_ERROR”(和其他),表示连接丢失或其他原因。

在服务器(有线程)中,当客户端连接时发送消息“正在连接...”,然后“连接成功”或“连接失败”,然后发生错误。简而言之,它可以是:

send(...) //Connecting...
...
send(...) //Connection successful

或:

send(...) //Connecting...
...
send(...) //Connection failed
...
send(...) //The error

如何检查是否有等待接收的消息?

1 个答案:

答案 0 :(得分:0)

您可以在套接字上使用select(...)API等待N毫秒来检查是否已准备好接收消息,或者是否可以在不阻塞的情况下执行send API。