socket编程[1]
来源:互联网 发布:手机淘宝改好评怎么改 编辑:程序博客网 时间:2024/06/08 05:17
linux和windows下用setsockopt设置SO_SNDTIMEO,SO_RCVTIMEO的参数的一点区别
UDP的socket在某些情况:如对方关闭时,本地可能sendto不出去数据,然后recvfrom就会被阻塞,这时就需要设置 这两个参数的值提高程序质量。
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));
0 0
- socket编程学习1----socket编程框架
- socket编程总结(1)
- socket编程1
- Unix Socket编程1
- socket编程(1)
- PHP socket编程(1)
- socket编程基础1
- Windows SOCKET编程 1
- socket 编程1
- Socket编程(1)
- Socket编程(1)-InetAddress
- Socket编程实践(1)
- Socket编程(1)
- socket编程[1]
- python socket编程(1)
- linux socket编程1
- socket编程--1
- 计算机网络1-Socket编程
- 明明添加引用了,但还是提示:未能找到类型或命名空间名称xxx,这是怎么回事?
- 【Android】图片操作之 —— Bitmap,byte[],Drawable,InputStream相互转化工具类
- Linux电源管理(6)_Generic PM之Suspend功能
- 疯狂猜歌实现(10)—— 实现提示、删除按键之事件处理以及金币逻辑
- POJ 3276 Face The Right Way 反转问题 常用技巧
- socket编程[1]
- Java中-----HTML(网页)的设计
- 单例模式
- 详解4字节对齐
- bindAppWidgetIdIfAllowed 老是返回false的原因
- linux下NFS共享与开机自动挂在硬盘
- SqlBulkCopy批量插入数据
- 配置SDK时遇到的一系列问题
- WinPcap实战(一)——发送ARP包