对recv()感到困惑
对不起,如果这个问题已经回答了,但我找不到 我对recv和recvfrom有点困惑。一旦服务器绑定地址或接受TCP连接,就会调用recv。recv是否经常检查已发送的消息,还是等待收到消息?如果它确实等待,等待时间有多长 我不知道我说的是否有道理,但如果有人能启发我,我将不胜感激 如果套接字上没有可用的消息,并且未在套接字的文件描述符上设置O_NONBLOCK,recv将阻塞,直到消息到达 如果套接字上没有可用的消息,并且在套接字的文件描述符上设置了O_NONBLOCK,则recv将失败并将errno设置为[EAGAIN]或[eWoldBlock] 资料来源: 如果套接字上没有可用的消息,并且未在套接字的文件描述符上设置O_NONBLOCK,recv将阻塞,直到消息到达 如果套接字上没有可用的消息,并且在套接字的文件描述符上设置了O_NONBLOCK,则recv将失败并将errno设置为[EAGAIN]或[eWoldBlock]对recv()感到困惑,c,sockets,client,recv,C,Sockets,Client,Recv,对不起,如果这个问题已经回答了,但我找不到 我对recv和recvfrom有点困惑。一旦服务器绑定地址或接受TCP连接,就会调用recv。recv是否经常检查已发送的消息,还是等待收到消息?如果它确实等待,等待时间有多长 我不知道我说的是否有道理,但如果有人能启发我,我将不胜感激 如果套接字上没有可用的消息,并且未在套接字的文件描述符上设置O_NONBLOCK,recv将阻塞,直到消息到达 如果套接字上没有可用的消息,并且在套接字的文件描述符上设置了O_NONBLOCK,则recv将失败并将er
来源:注意,您可以使用select或poll实现超时,这也允许您同时等待多个套接字。注意,您可以使用select或poll实现超时,这也允许您同时等待多个套接字