右侧
当前位置:网站首页 > 资讯 > 正文

socketerror什么意思,socket error the remote host closed the connection

作者:admin 发布时间:2024-01-30 21:45 分类:资讯 浏览:29 评论:0


导读:recv返回值socket_error另一端(客户端)socket调用shutdown后,recv才会返回0。你直接把,客户端关掉,recv返回socketerror,...

recv返回值socket_error

另一端(客户端)socket 调用 shutdown 后,recv才会返回0。你直接把,客户端关掉,recv返回 socket error, 说明客户端没有调用shutdown,并且可以断定,WSAGetLastError 返回 网络重置。

对于非重叠(非异步的)的操作,函数返回大于0的值表示操作成功。返回0表示连接中断,此时需要释放套接字资源。返回SOCKET_ERROR(-1),表示出错,使用WSAGetLastError()获取出错的原因。

recv函数返回其实际copy的字节数,如果recv在copy时出错,那么它返回SOCKET_ERROR。如果recv函数在等待协议接收数据时网络中断了,那么它返回0。

recv函数仅仅是copy数据,真正的接收数据是协议来完成的),recv 函数返回其实际copy的字节数。

recv函数仅仅是copy数据,真正的接收数据是协议来完成的);recv函数返回其实际copy的字节数。如果recv在copy时出错,那么它返回SOCKET_ERROR;如果recv函数在等待协议接收数据时网络中断了,那么它返回0。

首先客户端非法中断,或者调用close(fd)后服务器调用recv或者read,会返回ECONNRESET,这个错误告诉你对端(客户端已经关闭了或者进行重启),理论说遇到这个问题和处理recv/read返回值为0是一个效果,服务器将该链接断开即可。

标签:


取消回复欢迎 发表评论: