Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Loading

Suspend Task vs Block Task

Posted by michaeln32 on January 11, 2018

Hi

Can you please tell me what is the deference between Suspend Task and Block Task ?

Thanks


Suspend Task vs Block Task

Posted by richard_damon on January 11, 2018

They are sort of similar but a few notable differences.

When a task is suspended, it will cease to be eligable to use CPU time until it is resumed, and FreeRTOS basically doesn't need to deal with it until it is resumed.

When a task blocks, it also will cease to be eligable to use CPU time until the condition it blocked on becomes available, or until a timeout has expired. As an implementation detail, a timeout set to portMAX_DELAY can be made indefinite, and a task blocking for this time actually becomes supended, with a resumption condition based on what it blocked on.

Any Task can suspend or resume another (although being arbitrary about this can make you program a lot harder to figure out what is happening). A Task can only block itself, and can set a timeout for the block.


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


Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Webinar

"OTA Update Security and Reliability" webinar presented by TI and AWS. Register here.


Careers

FreeRTOS and other embedded software careers at AWS.


Latest News

FreeRTOS kernel V10.0.1 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner