Quality RTOS & Embedded Software
About   Contact   Support   FAQ

 Real time embedded FreeRTOS RSS feed 
Real time embedded FreeRTOS mailing list 
Quick Start Supported MCUs Books & Kits Trace Tools Ecosystem FreeRTOS Labs Training
Sponsored Link

Last site update December 29 2014

[Task Control]

task. h
void vTaskSuspend( TaskHandle_t xTaskToSuspend );

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.

xTaskToSuspend Handle to the task being suspended. Passing a NULL handle will cause the calling task to be suspended.
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. }

[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]

Copyright (C) 2004-2010 Richard Barry. Copyright (C) 2010-2015 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOSTM distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd.