gpt4 book ai didi

azure - Azure IoT C SDK 出现不可恢复错误后重试

转载 作者:行者123 更新时间:2023-12-03 01:40:50 24 4
gpt4 key购买 nike

根据this documentation ,如果 SDK 检测到不可恢复的错误,则不会重新尝试重新连接。然而,在 the associated documentation对于 C SDK,没有提及可恢复或不可恢复的错误(或者至少我没有在那里找到它)。

  • 如何查明 SDK 目前是否处于可能最终恢复的状态或需要手动重新尝试重新连接的状态?

  • 如果重试策略决定不重新尝试重新连接,是否可以手动重新连接而不破坏设备句柄并创建新句柄(例如使用 IoTHubDeviceClient_CreateFromConnectionString)?

最佳答案

  • C SDK 目前不从重试的角度区分不可恢复的错误和可恢复的错误。

  • 所有类型的故障都被视为有可能恢复的可恢复故障 - 因此应修复文档以反射(reflect)当前功能 2018_11_20 版本

  • 也就是说,SetConnectionStatusCallback 将返回适当的原因代码,这有助于确定是否应允许 SDK 重试或应用程序是否需要建立新连接。

  • 例如,我会将 IOTHUB_CLIENT_CONNECTION_BAD_CREDENTIAL 视为应用程序设备客户端的不可恢复错误。

  • 您是对的 - 需要创建新的设备句柄才能手动重新尝试连接。这是因为所有 C SDK API 都关闭此句柄来查询 iothub_device_client 内的各种设备客户端状态。

关于azure - Azure IoT C SDK 出现不可恢复错误后重试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53618951/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com