使用rtthread的4.0.5在正点原子stm32f4的板子上例程基础上增加了uart8,使用串口V1.0版本,使用的STM32F427VGT6。增加了KAWAII MQTT,笔记本中安装EMQ做为服务器,建立连接后KAWAII MQTT会创建一个mqtt的线程,线程优先级是5。
测试中发现如果已经连接上mqtt服务器后被服务器主动剔除或者服务器关闭,这个时间程序会一直在mqtt的线程中,其他低级的线程无法被系统调用,
1、请问应该在哪里增加rt_mdelay()函数让mqtt线程让出cpu呢?
2、一般mqtt的线程优先级分配多少合适呢?
3、除了在必要的地方增加rt_mdelay(),还有其他方法吗?
4、有一个#define KAWAII_MQTT_MAX_CMD_TIMEOUT 20000,源码中没找到哪里有用