社区
C++ 语言
帖子详情
send recv函数 错误处理问题
lyliubing
2013-04-23 06:09:11
对send和recv的返回值应该怎么处理?
严谨一点的方法,我想了一天,没有想到,求指点
是否要对WSAGetLastError()得到的错误码中比较重要的几个做单独处理?
...全文
20
回复
打赏
收藏
send recv函数 错误处理问题
对send和recv的返回值应该怎么处理? 严谨一点的方法,我想了一天,没有想到,求指点 是否要对WSAGetLastError()得到的错误码中比较重要的几个做单独处理?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
recv
函数
和
send
函数
返回值
错误处理
本文中分析的都是非阻塞态的socket错误代码,因为阻塞态也不会出现EWOULDBLOCK错误。 1、
recv
函数
: 返回值<0时并且(errno==EINTR||errno==EWOULDBLOCK||errno==EAGAIN)的情况下认为连接是正常的,继续接收。 当socket设置为非阻塞的时候,
recv
返回错误时才会有errno==EWOULDBLOCK||errno==EAGAIN两种情况; #define EWOULDBLOCK EAGAIN......
深入理解socket中的
recv
函数
和
send
函数
一、
函数
原型 **·**
recv
函数
用于socket通信中接收消息,接口定义如下: ssize_t
recv
(int socket, void *buf, size_t len, int flags) 参数一:指定接收端套接字描述符; 参数二:指向一个缓冲区,该缓冲区用来存放
recv
函数
接收到的数据; 参数三:指明buf的长度; 参数四:一般置为0; 返回值:失败时,返回值小于0;超时或对端主动关闭,返回值等于0;成功时,返回值是返回接收数据的长度。 **·**
send
函数
用于socket通信中发送消息,
linux
recv
函数
参数,linux
send
recv
函数
详解
int
send
(SOCKETs,constcharFAR*buf,intlen,intflags);不论是客户还是服务器应用程序都用
send
函数
来向TCP连接的另一端发送数据。客户程序一般用
send
函数
向服务器发送请求,而服务器则通常用
send
函数
来向客户程序发送应答。该
函数
的第一个参数指定发送端套接字描述符;第二个参数指明一个存放应用程序要发送数据的缓冲区;第三个参数指明...
Socket中
send
()
函数
和
recv
()
函数
详解
目录1、
send
函数
2、
recv
函数
关于socket的
send
和
recv
的超时设置 1、
send
函数
int
send
( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用
send
函数
来向TCP连接的另一端发送数据。 客户程序一般用
send
函数
向服务器发送请求,而服务器则通常用
send
函数
来向客户程序发送应答。 (1)第一个参数指定发送端套接字描述符; (2)第二个参数指明一个存放应用程序要发送数据的缓冲区; (3)第三
send
函数
和
recv
函数
flags:收发数据时指定的可选信息; – 当flags为0时,
send
等待发送缓冲区清空后把数据放入缓冲区再返回(有可能等待),
recv
等待数据缓冲区有数据后获取再返回(有可能等等待); – 当flags为0时,
send
()/
recv
() 在功能上等价于 write()/read() ; flags可选配置: 可选项 含义
send
recv
MSG_OOB 用于传输带外数据(Out Of Band data),即:紧急数据 ✔ ✔ MSG_PEEK 窥探接收缓冲区是否存在数据
C++ 语言
64,676
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章