linux和windows下用setsockopt设置send(), recv() 超时的参数的一点区别
2012-05-09 18:46
531 查看
资料出处:http://hi.baidu.com/genie_bottle/blog/item/f241f817a4f7020ec83d6dfc.html
linux和windows下用setsockopt设置send(), recv() 超时的参数的一点区别
2008-12-15 20:18
linux:
struct timeval timeout={3,0};//3s
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_SNDTIMEO,&timeout,sizeof(timeout));
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_RCVTIMEO,&timeout,sizeof(timeout));
如果ret==0 则为成功,-1为失败,这时可以查看errno来判断失败原因
int recvd=recv(sock_fd,buf,1024,0);
if(recvd==-1&&errno==EAGAIN)
{
printf("timeout\n");
}
windows:
int timeout = 3000; //3s
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_SNDTIMEO,&timeout,sizeof(timeout));
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_RCVTIMEO,&timeout,sizeof(timeout));
linux和windows下用setsockopt设置send(), recv() 超时的参数的一点区别
2008-12-15 20:18
linux:
struct timeval timeout={3,0};//3s
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_SNDTIMEO,&timeout,sizeof(timeout));
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_RCVTIMEO,&timeout,sizeof(timeout));
如果ret==0 则为成功,-1为失败,这时可以查看errno来判断失败原因
int recvd=recv(sock_fd,buf,1024,0);
if(recvd==-1&&errno==EAGAIN)
{
printf("timeout\n");
}
windows:
int timeout = 3000; //3s
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_SNDTIMEO,&timeout,sizeof(timeout));
int ret=setsockopt(sock_fd,SOL_SOCKET,SO_RCVTIMEO,&timeout,sizeof(timeout));
相关文章推荐
- linux和windows下用setsockopt设置send(), recv() 超时的参数的一点区别
- linux和windows下用setsockopt设置SO_SNDTIMEO,SO_RCVTIMEO的参数的一点区别
- linux和windows下用setsockopt设置SO_SNDTIMEO,SO_RCVTIMEO的参数的一点区别
- linux和windows下用setsockopt设置SO_SNDTIMEO,SO_RCVTIMEO的参数的一点区别
- send,recv在windows与linux下的超时设置
- linux下用setsockopt()来控制recv()与send()的超时
- socket设置超时的linux和windows区别
- 用setsockopt设置send(),recv()设置超时
- 关于linux下的udp/tcp通信设置发送sendto/接收recvfrom信息超时的参数。解决通道堵塞问题。
- setsockopt()用法(参数详细说明) recv、send的超时处理
- setsockopt()用法(参数详细说明) recv、send的超时处理
- setsockopt()用法(参数详细说明) recv、send的超时处理
- setsockopt()用法(参数详细说明) recv、send的超时处理
- linux 设置send、recv超时
- linux下recv 、send阻塞、非阻塞区别和用法
- linux socket中的地址转换、返回值和setsockopt()来控制recv()与send()的超时
- linux,windows keepalive参数的查看与设置
- socket的send、recv阻塞设置阻塞超时时间
- 用setsockopt()来控制recv()与send()的超时
- 用setsockopt()来控制recv()与send()的超时