[应用相关] 发送一次数据,接收到两次数据

[复制链接]
1545|15
 楼主| duo点 发表于 2024-10-31 13:00 | 显示全部楼层 |阅读模式
结果:发送的一方

接收的一方
问题描述:我打算发送三个数据03 02 01,接收方接收到的分两次,03 02 01 00 00 00
接收方代码是这样的

麻烦帮我看看是代码逻辑 有啥问题吗
三生万物 发表于 2024-12-6 22:12 | 显示全部楼层
有干扰呗,不然怎么会发送2次
江河千里 发表于 2024-12-6 22:14 | 显示全部楼层
你其实加个协议就好了,就不会出现这种问题了

暖了夏天蓝了海 发表于 2024-12-7 02:00 | 显示全部楼层
是不是标记没清除啊,导致接受到2

一秒落纱 发表于 2024-12-7 04:00 | 显示全部楼层
我觉得可能是你的接收函数有问题吧

夜阑风雨 发表于 2024-12-7 05:00 | 显示全部楼层
你判断不是0的话再接受呗

远山寻你 发表于 2024-12-7 06:00 | 显示全部楼层
在网络传输过程中,数据包可能会因为网络延迟或丢包而需要重传,导致接收端收到多次相同的数据

光辉梦境 发表于 2024-12-7 07:00 | 显示全部楼层
发送端或接收端的软件或硬件可能存在故障,导致数据被重复发送或接收

淡漠安然 发表于 2024-12-7 08:00 | 显示全部楼层
在某些网络环境中,数据可能会通过不同的路径传输,导致接收端收到多次相同的数据

别乱了阵脚 发表于 2024-12-7 09:00 | 显示全部楼层

接收端的缓冲区可能存在问题,导致数据被多次读取
冰春彩落下 发表于 2024-12-7 10:00 | 显示全部楼层
使用的通信协议可能存在设计缺陷,导致数据被重复发送或接收

powerantone 发表于 2024-12-9 15:21 | 显示全部楼层
检查发送和接收缓冲区的大小是否一致。如果接收缓冲区比实际发送的数据大,可能会导致填充额外的零字节。
laocuo1142 发表于 2024-12-9 16:00 | 显示全部楼层
数据读取逻辑错误
flycamelaaa 发表于 2024-12-9 17:00 | 显示全部楼层
检查通信协议是否定义了数据包的结束标志或长度字段。如果协议中缺少这些元素,接收方可能无法正确判断数据包的边界,从而读取到额外的数据。
stormwind123 发表于 2024-12-9 19:00 | 显示全部楼层
代码实现是否有逻辑错误或不当的循环条件导致多读了数据。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

560

主题

2477

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部