OpenEdv-开源电子网

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

网络通讯断开,主任务崩掉情况

[复制链接]

5

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2015-7-23
在线时间
11 小时
发表于 2016-9-28 15:26:34 | 显示全部楼层 |阅读模式
各路大神,一个问题卡住很久了,我用的是407探索者的开发板,那个综合实验库函数版本里面的网络测试,我把它修改,启用一个线程来循环接收网络数据(开发板作为客户端),没断网时一切正常,但一旦断网,主线程就卡住不动了(触屏什么都没反应),监视进程还能运行,(这个控制网络的线程的优先级改为2,4等都不行,主线程也改了还是不行),原来以为是线程间内存共享问题,结果把线程间有联系的代码注释了还是不行,一旦把电脑端的服务端关掉,主线程任务马上停止运行
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

119

主题

439

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1185
金钱
1185
注册时间
2015-9-18
在线时间
422 小时
发表于 2016-9-28 15:32:34 | 显示全部楼层
没有源码不太明白
但是netconn_connect()和netconn_recv()都是会阻塞线程的,你看是不是线程被阻塞了
电子爱好者
回复 支持 反对

使用道具 举报

5

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2015-7-23
在线时间
11 小时
 楼主| 发表于 2016-9-28 15:37:00 | 显示全部楼层
netconn_connect()是在主循环前完成的,netconn_recv()没有阻塞,一直都在运行啊,netconn_connect()这个函数应该不会阻塞吧,我把它放在控制网络通讯的线程里面,这个线程也没有阻塞啊,只是主线程卡住了,重新开启电脑端的服务端也不行啊
回复 支持 反对

使用道具 举报

5

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2015-7-23
在线时间
11 小时
 楼主| 发表于 2016-9-28 15:38:55 | 显示全部楼层
liuchang 发表于 2016-9-28 15:32
没有源码不太明白
但是netconn_connect()和netconn_recv()都是会阻塞线程的,你看是不是线程被阻塞了

还有改优先级后,网络断开后几秒钟主线程才卡住,这是什么原因啊
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-12 17:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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