应该是 FreeRTOS 任务主循环中的延迟?
Shuld be a delay in a FreeRTOS task main loop?
是否有必要在 FreeRTOS 任务(由 xTaskCreatePinnedToCore()
创建)中的无限循环中添加一些延迟?另外,就我而言,由于函数 aws_iot_mqtt_yield
已经超时 (100
),我倾向于认为额外的任务延迟是不必要的。
我的任务如下:
...
while(1) {
error = aws_iot_mqtt_yield(&m_client, 100);
check error...
vTaskDelay(10 / portTICK_RATE_MS);
}
...
没有。您不需要添加延迟。事实上,在我看来,这是一种不好的做法,因为这意味着您可能会在任务的两个不同点暂停,这会导致程序流程非常混乱并且难以调试。
是否有必要在 FreeRTOS 任务(由 xTaskCreatePinnedToCore()
创建)中的无限循环中添加一些延迟?另外,就我而言,由于函数 aws_iot_mqtt_yield
已经超时 (100
),我倾向于认为额外的任务延迟是不必要的。
我的任务如下:
...
while(1) {
error = aws_iot_mqtt_yield(&m_client, 100);
check error...
vTaskDelay(10 / portTICK_RATE_MS);
}
...
没有。您不需要添加延迟。事实上,在我看来,这是一种不好的做法,因为这意味着您可能会在任务的两个不同点暂停,这会导致程序流程非常混乱并且难以调试。