vTaskSuspend() function
INCLUDE_vTaskSuspend must be defined as 1 for this function to be available. See the configuration section for more information. Suspend any task. When suspended a task will never get any microcontroller processing time, no matter what its priority. Calls to vTaskSuspend are not accumulative - i.e. calling vTaskSuspend () twice on the same task still only requires one call to vTaskResume () to ready the suspended task. Example usage:
void vAFunction( void )
{
TaskHandle_t xHandle;
// Create a task, storing the handle.
xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );
// ...
// Use the handle to suspend the created task.
vTaskSuspend( xHandle );
// ...
// The created task will not run during this period, unless
// another task calls vTaskResume( xHandle ).
//...
// Suspend ourselves.
vTaskSuspend( NULL );
// We cannot get here unless another task calls vTaskResume
// with our handle as the parameter.
}
Arguments
xTaskToSuspend
Handle to the task being suspended. Passing a NULL handle will cause the calling task to be suspended.
Functions calling vTaskSuspend()
Functions called by vTaskSuspend()
vTaskSuspend()
Data read by vTaskSuspend()
Data written by vTaskSuspend()
vTaskSuspend()::pxTCB all items filtered out
vTaskSuspend()
vTaskSuspend()::pxTCB all items filtered out
Type of vTaskSuspend()
vTaskSuspend()