Quality RTOS & Embedded Software

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


clear a queue "vQueueClear(xQueueH...

Posted by rgavrilov on January 24, 2011
I am looking for a way to clear a queue.
QueueReceive works, but it is not efficient (every receive operation takes/releases locks, and checks the queue).

I need something like QueueClear() function. Is there one?

RE: clear a queue "vQueueClear(xQueueH...

Posted by Richard on January 24, 2011
There is no specific API function for this at the moment, but it should be easy enough to implement. Its just a matter of setting the number of items in the queue to 0. However, you have to consider what happens to tasks that are blocked on the queue at the time the queue is cleared. If they are blocked waiting to send, then they should be unblocked. If they are blocked waiting to receive (unlikely if there were items in the queue, but possible if a higher priority task was unblocked when items become available) then you can just leave them as they are.

Please enter a feature request in the SourceForge feature request tracker.


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

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

Latest News

Meet us at Embedded World. Hall 3A-525.

Hear from Richard Barry at Embedded World. Feb 28, 16:00, Hall 4-428.

Video: Watch James Gosling & Richard Barry at re:Invent, Las Vegas 2017.

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

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

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