该问题常见于使用BLE Mesh时,消息队列中的osi_alarm_new alarm_cbs(闹钟回调)被占满造成,导致快速配置失败。解决方法是在使用完osi_alarm_new后应该释放它的资源。以下是可能的代码示例:
// Allocate an osi_alarm instance. osi_alarm_t *myAlarm = osi_alarm_new("my alarm", myAlarmCallback, myAlarmData); if (myAlarm == NULL) { // Handle the error... }
// Do something with myAlarm...
// Free the osi_alarm instance to release its resources. osi_alarm_delete(myAlarm);