VB6.0的winsock控件用UDP局域网广播数据,当数据很大时接收方报10040--数据包太大,请问怎么处理。

 我来答
ygbh9999
2012-02-07 · TA获得超过324个赞
知道小有建树答主
回答量:235
采纳率:100%
帮助的人:219万
展开全部
虽然很久没用这控件了,不过原理还是懂的,给你点思路吧
解决你的问题,大概有几个方法:
一.控制发送速度,简单但是效率有点低
二.技术方加大数据缓冲,优先接收,读了就放内存里,接收完或是空闲时再处理,这在处理过程复杂时比较有效
三.出错的数据丢掉----没错,就是不要了!
既然你选择了UDP,就无法避免丢包的事情发生,肯定要有相关的容错处理.网络可以"自动"丢包,我们写的程序为什么不能"人为"丢包呢?
其实,多数情况下,要根据所处理数据的特点 当前网络特点 机器现状来制定策略,综合上述办法,甚至创造更新的办法

以上,希望对你有帮助,还有问题欢迎探讨
xljbear
2012-02-08 · TA获得超过145个赞
知道小有建树答主
回答量:175
采纳率:0%
帮助的人:174万
展开全部
on error goto err
正常接受代码.....
exit sub
err:
if err.number=10040 then msgbox "数据包太大无法接受!",vbinformation,"":err.clear
追问
有没有办法接收到大量的全部数据
追答
只能把数据拆开分批发送咯
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式