社区
通信技术
帖子详情
Windows下socket发了一次数据, 有可能多次才收到吗?
xfchina
2000-08-17 12:35:00
一般情况下,我是一次都收到了,我想知道否有必要做一定的处理
...全文
205
4
打赏
收藏
Windows下socket发了一次数据, 有可能多次才收到吗?
一般情况下,我是一次都收到了,我想知道否有必要做一定的处理
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Chen_Lin
2000-08-17
打赏
举报
回复
发包的长度超过缓冲区的时候(默认8K)
xfchina
2000-08-17
打赏
举报
回复
假如我的包不超过8k,会多次收到吗?我的程序在包不超过1k的情况下,在internt上反复测试也没有收到多次的情况,顶多收到两个一样的数据包,我会忽略第二个包。
Kevin_qing
2000-08-17
打赏
举报
回复
當然可能多次才收到了,不信在inet上测测。
kingwill
2000-08-17
打赏
举报
回复
那要看你使用何种类了,CAsyncSocket是非阻塞的异步方式。如果你发包的长度超过缓冲区的时候,会返回SOCKET——ERROR,此时你要判断错误值,GETLASTERROR(),若错误为WSAEWOULDBLOCK,则说明对方缓冲区已满,你需要控制重发。
要是你用CSOCKET类,它是阻塞的,当对方缓冲区满时,它会自己阻塞自己,直到对方完全收到。这种情况,你也要控制避免SOCKET阻塞线程,最好用TIMEOUT,再重发。
一般的情况都是用非阻塞,多线程,来实现同步。
java源码包---java 源码 大量 实例
Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...
Windows
下的
socket
编程
一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换
数据
的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行...
Socket
Receive
数据
一次
性接收不全的问题
Socket
Receive
数据
一次
性接收不全的问题
2,
socket
循环接收
数据
:
socket
循环接收大
数据
,问:
socket
异步接收
数据
?
答:客户端接收缓冲区设置多大就接收多大的
数据
包,当然发送端发送
数据
大于客户端缓冲区时,接收函数完成
一次
接收后会返回当前
数据
大小,你可以根据返回的做循环... 问:C#
socket
循环接收
socket
接收
数据
如果...
【
Windows
编程】
Windows
Socket
API介绍
目录01、目录02、浅谈
Socket
(套接字)03、浅谈TCP/IP七层模型04、浅谈三次握手,四次挥手05、
Socket
API介绍5.1 WSAStartup5.2 WSAClearup5.3
socket
5.4 close
socket
5.5 bind5.6 Listen5.7 accept5.8 connect5.9 ...
通信技术
4,358
社区成员
28,927
社区内容
发帖
与我相关
我的任务
通信技术
通信技术相关讨论
复制链接
扫一扫
分享
社区描述
通信技术相关讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章