首页 > 解决方案 > c recv 直到返回零

问题描述

在我的客户端代码(我也控制服务器代码)中,我想做这样的事情;

while( (result = recv(sock_fd, in_buff, SRV_BUFF_SIZE, 0)) >= 0 )
{
    // do something with in_buff    
}
printf("Exited recv loop with result = %i\n", result);

但当然recv永远不会返回零,除非服务器关闭套接字。

服务器有没有办法发送一些说服recv退出的东西?我不认为我应该一直打开和关闭套接字(似乎很浪费)。

标签: csocketsrecv

解决方案


推荐阅读