OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6254|回复: 9

发现LWIP的TCP客户端有个BUG,当服务器端端开之后,如果还继续发送数据,那就不能检测到连接状态。求助求助

[复制链接]

7

主题

18

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-8-5
在线时间
25 小时
发表于 2016-12-5 09:11:21 | 显示全部楼层 |阅读模式
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

18

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-8-5
在线时间
25 小时
 楼主| 发表于 2016-12-5 09:13:17 | 显示全部楼层
发现LWIP的TCP客户端有个BUG,当服务器端断开之后,如果还继续发送数据,那就不能检测到连接状态,最近在做个项目,因为原子的程序是按键触发发送数据的,但是我写的不是,所以服务器断开之后我的还是在发送数据,就会检测不到连接状态。
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2016-12-5 13:09:41 | 显示全部楼层
如果网络调试助手做服务器,但是不断的按按键发送数据,手动关闭网络调试助手的服务器端,开发板会检测到服务链接断开,数据发送停止!自己下载例程测试。
开往春天的手扶拖拉机
回复

使用道具 举报

21

主题

387

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1043
金钱
1043
注册时间
2016-9-8
在线时间
213 小时
发表于 2016-12-5 13:15:13 | 显示全部楼层
实际程序,你的程序应该发IDLE包吧,,检测不到IDLE包,认为连接断开,,开发板只定有开发板的局限性,不能把开发板的程序看成万能的。。。。
shop60994719.taobao.com
回复

使用道具 举报

7

主题

18

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-8-5
在线时间
25 小时
 楼主| 发表于 2016-12-5 13:58:38 | 显示全部楼层
密耳 发表于 2016-12-5 13:15
实际程序,你的程序应该发IDLE包吧,,检测不到IDLE包,认为连接断开,,开发板只定有开发板的局限性,不能 ...

请问怎么使用IDLE包
回复

使用道具 举报

21

主题

387

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1043
金钱
1043
注册时间
2016-9-8
在线时间
213 小时
发表于 2016-12-5 14:08:00 | 显示全部楼层
电信大神 发表于 2016-12-5 13:58
请问怎么使用IDLE包

IDEL包,你也可以叫心跳包,,你的客户端可以自定义,比如每秒给服务器发一个空连接数据,服务器收到后给你返回相应数据,,你没接到服务器返回,或多次没接收到,认为掉线了,,这样你就可以重新connect服务器。。哦不?
shop60994719.taobao.com
回复

使用道具 举报

7

主题

18

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-8-5
在线时间
25 小时
 楼主| 发表于 2016-12-5 18:06:41 | 显示全部楼层
zuozhongkai 发表于 2016-12-5 13:09
如果网络调试助手做服务器,但是不断的按按键发送数据,手动关闭网络调试助手的服务器端,开发板会检测到服 ...

我的情况是检测不到服务器已经断开了,因为我手动断开之后还继续发送数据,这是就会检测不到已经断开了,注:有时候是可以检测到的,但是我不知道是什么情况
回复

使用道具 举报

7

主题

18

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-8-5
在线时间
25 小时
 楼主| 发表于 2016-12-6 15:50:18 | 显示全部楼层
zuozhongkai 发表于 2016-12-5 13:09
如果网络调试助手做服务器,但是不断的按按键发送数据,手动关闭网络调试助手的服务器端,开发板会检测到服 ...

关键是检测不要连接已经断开了,不信你把按键的if语句设置成1,让它一直发送,手动断开之后不能检测到断开(有时候可以检测到)
回复

使用道具 举报

7

主题

18

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-8-5
在线时间
25 小时
 楼主| 发表于 2016-12-6 15:52:31 | 显示全部楼层
密耳 发表于 2016-12-5 13:15
实际程序,你的程序应该发IDLE包吧,,检测不到IDLE包,认为连接断开,,开发板只定有开发板的局限性,不能 ...

但是如果不是发送数据的状态它是每次都可以检测到的
回复

使用道具 举报

10

主题

31

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2020-4-9
在线时间
17 小时
发表于 2020-4-16 14:37:32 | 显示全部楼层
请问楼主是怎么解决的?我也出现同样的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 17:04

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表