Task Resuming & Suspending

A freeRTOS task that is currently running can be suspended by another task or by its own task. A suspended task will not get any processing time from the micro-controller. Once suspended, it can only be resumed by another task.

API which can suspend a single task is:

void vTaskSuspend( TaskHandle_t xTaskToSuspend );
 

Refer this link to explore more details on the API. https://www.freertos.org/a00130.html

API to suspend the scheduler is:

void vTaskSuspendAll( void );
 
API to resume a single task:
 
void vTaskResume( TaskHandle_t xTaskToResume );
 
API to resume the scheduler:
 
BaseType_t xTaskResumeAll( void );
 

 

Back to top