C编程TCP通信使整个任务阻塞,无法运行其他程序,除非复位操作

我用C做了一个DTU程序,使用暴力测试,大概300ms从串口接收一帧80字节的数据,发给服务器,服务器把原数据返回给模组,模组串口打印,在信号10左右的时候,一段时间,出现该TCP通信的任务进程阻塞,长时间停止数据TCP发送和接收,也没用,该进程一直阻塞,不能动弹,除非复位操作。

该程序没有跑飞,其他任务进程正常运行,只有该进程不能动弹。是不是底层SDK有BUG?

请先 登录 后评论

2 个回答

技术销售Delectate
擅长:IT

切勿重复提问。

请先 登录 后评论
罗耀锋 - 软件工程师
擅长:软件开发

1.充分利用luatask创建多个协程(task),用消息通知(publish),各个协程之间(task)实现异步非阻塞运行与互相通信。

2.网络,收,发,串口收,发,一个模块一个协程。代码清晰简单,好维护。开发速度又快。

3.用C语言,真的是很粗暴的开发方式。


请先 登录 后评论
  • 1 关注
  • 0 收藏,2238 浏览
  • 331898600@qq.com 提出于 2018-09-07 11:37

相似问题