社区
网络编程
帖子详情
关于recv返回值的问题,困扰已久
chengjiacj
2008-10-18 06:14:17
写了一个客户端和服务器端程序,之间用TCP协议,数据包只传送一次
客户端connect到服务器上,recv数据,但返回值总是为0,但经检查客户端已接收到数据,为什么返回值不是接收到的数据长度?返回值为0是代表服务器端已经断开连接,
但服务器端此时并没有调用close函数,因为我使用了一个死循环让服务器端不关闭socket。
后来做了个测试,服务器端不调用send发送数据,客户端调用recv函数,立即返回0,哪位知道这是什么原因啊?
...全文
479
7
打赏
收藏
关于recv返回值的问题,困扰已久
写了一个客户端和服务器端程序,之间用TCP协议,数据包只传送一次 客户端connect到服务器上,recv数据,但返回值总是为0,但经检查客户端已接收到数据,为什么返回值不是接收到的数据长度?返回值为0是代表服务器端已经断开连接, 但服务器端此时并没有调用close函数,因为我使用了一个死循环让服务器端不关闭socket。 后来做了个测试,服务器端不调用send发送数据,客户端调用recv函数,立即返回0,哪位知道这是什么原因啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
RedHat_net
2008-10-22
打赏
举报
回复
[Quote=引用 5 楼 hunterljm 的回复:]
嗯..我对这个题目有些疑问..也可能是我没理解清楚..
楼主说服务器不调用send发送数据,那客户端已经接收到的数据是怎么来的,会不会是你的服务器发送方这边发送了问题呢?
[/Quote]
是啊,又同样的疑惑啊!!没又发送数据,客户端居然能收到??哪来的数据呢?
hunterljm
2008-10-21
打赏
举报
回复
嗯..我对这个题目有些疑问..也可能是我没理解清楚..
楼主说服务器不调用send发送数据,那客户端已经接收到的数据是怎么来的,会不会是你的服务器发送方这边发送了问题呢?
ACuke
2008-10-21
打赏
举报
回复
非阻塞方式?
aled6825
2008-10-19
打赏
举报
回复
你的Flag怎么设定的,若上一条是Peek到空消息,那么它将不会在消息队列中删除,可以先处理掉空消息再接收.
if(recv(sListener,MsgBuff,256,MSG_PEEK)<=0) return 1;
iMsgLen = recvfrom(sListener,MsgBuff,256,0,(SOCKADDR*)&saReceive,&iSALen);
chengjiacj
2008-10-18
打赏
举报
回复
我是将接收到的数据打印出来了
不好意思,我使用linux的,发错地方了,不过原理应该差不多吧
没有错误返回
野男孩
2008-10-18
打赏
举报
回复
WSAGetLastError()看看原因。
ok208043624
2008-10-18
打赏
举报
回复
你是怎么检查到客户端已经收到数据了?
TCP通信,
recv
接收数据需要注意的地方?
关于TCP通信中,
recv
函数接收数据大小的
问题
,之前一直觉得,只要是客户端与服务器一发一收的模式,那么
recv
接收的数据大小一定是函数中指定的数据大小。这次写了客户端与服务器通信的程序,在这上面栽了一个大跟斗...
TCP socket 一对一编程实例中出现“烫烫烫”的
问题
我在tcpsocket一对一聊天实例的编程过程中出现了前几个数据能正常运行,但是超过一定空间后就会出现好多“烫烫烫”,这个
问题
困扰
了三天,在这三天我对我的程序改了又改,还是没改对重点。send()函数和
recv
()函数中...
socket10053发送数据出现错误
前几天初步解决了
困扰
许久的socket10053的
问题
。 现象如下:windows下开发多线程socket通信的系统(采用事件选择WSAEventSelect的方式),在高并发的情况下send及
recv
时经常出错(有时是收到错误码不为0的...
epoll socket 服务端中read和write的
返回值
讨论
关于write的
返回值
: 1、
返回值
n=-1,errno = EAGAIN时; 说明系统缓冲区已经满了,不能再写进去了。当write为阻塞时不会返回这个错误,会阻塞掉。 2、
返回值
n时;客户端断开连接或出错。 何时系统会通知...
使用write函数遇到的
问题
write有两种用法。一种是:ssize_t write(int fd, const void *buf, size_t ...
返回值
:写入文档的字节数(成功);-1(出错) write函数把buf中nbyte写入文件描述符handle所指的文档,成功时返回写的字节数,错...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章