您好!
我使用 的 BOOSTXL-CC3135 WIFI 模块通过 SPI 总线与运行 在 FreeRTOS 上的 STM32L4连接。
我可以成功运行 TI 提供的 MQTT 客户端 v1.1.0 (连接、发布、订阅... )。
因此、超时保护 是我的系统的一项硬性要求、 当我调试 MQTT 堆栈时 、我发现没有针对连接确认的超时保护、会提供一个信标、其中 portMAX_DELAY 作为等待时间。
此致、
Ridha
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我使用 的 BOOSTXL-CC3135 WIFI 模块通过 SPI 总线与运行 在 FreeRTOS 上的 STM32L4连接。
我可以成功运行 TI 提供的 MQTT 客户端 v1.1.0 (连接、发布、订阅... )。
因此、超时保护 是我的系统的一项硬性要求、 当我调试 MQTT 堆栈时 、我发现没有针对连接确认的超时保护、会提供一个信标、其中 portMAX_DELAY 作为等待时间。
此致、
Ridha
您好 Kobi、
非常感谢您的回复。
是否有 MQTT 库的新版本或修复此问题的最新补丁?
如果不是、如果我在 MQTT 堆栈上应用列出的修改、该怎么办:
+在@ref MQTTClient_connect () API 下、只有当 blockingSend 标志设置为 true 时才会应用等待 CONNACK 消息。
+在@ref processNotifyAckCB 下、如果出现 MQTT_CONNACK 消息、则仅当 blockingSend 标志设置 为 true 时才应用 CONNACK 信号的发布。 否则、将执行回调以通知用户应用程序
因此、@ref MQTTClient_connect 的超时机制可由应用程序通过注册的回调函数触发。
所列补丁是否存在任何回归?
此致、
Ridha