AsyncStream无法即时发布值:固件更新流状态延迟推送问题
固件更新流程中AsyncStream状态推送延迟问题
我正在使用一款管理设备连接与固件状态的SDK,该SDK采用同一代理处理设备连接与固件状态管理两项功能。为模拟其行为,我实现了MockSDK与MockSDKDelegate,并让InitializationManager和FirmwareUpdateManager遵循该代理协议。
在固件更新流程中,当推送.updateFailed状态后,会执行SDK的反初始化与重新初始化操作。但后续调用FirmwareUpdateManager的deviceInitialization()方法时,.inProgress状态无法即时推送到AsyncStream中,必须等下一次收到.updateFailed时才会一并输出该状态。
预期控制台输出
FIRMWARE STREAM UPDATE stream value: inProgress (等待数秒) FIRMWARE STREAM UPDATE stream value: updateFailed FIRMWARE STREAM UPDATE stream value: inProgress (等待数秒) FIRMWARE STREAM UPDATE stream value: updateFailed ...
实际控制台输出
FIRMWARE STREAM UPDATE stream value: inProgress (等待数秒) FIRMWARE STREAM UPDATE stream value: updateFailed (等待数秒) FIRMWARE STREAM UPDATE stream value: inProgress FIRMWARE STREAM UPDATE stream value: updateFailed ...
内容的提问来源于stack exchange,提问作者Simon McNeil
相关产品推荐
相关产品推荐

