FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [March 2010 Threads] emptying a queuePosted by Alessandro de Manzano on March 11, 2010 Hello,
I'm still newbie with FreeRTOS, so I hope my questions are not (much) stupid..
How can I empty a queue ?
Sometimes I have the need to just ignore every data which could be in a queue until that moment (think about a keyboard buffer, for example) Currently I do a simple loop of xQueueReceive until it gets data (and ignore it), but I guess I could do something more efficient..
Thanks in advance,
bye
A. de Manzano
RE: emptying a queuePosted by Richard on March 11, 2010 The loop is probably the best thing. You could delete then re-create the queue (I have not done that in a long time!) provided the items it holds are not dynamically allocated. If they were dynamically allocated then you would loose references to items that were queued and therefore leak memory.
Regards.
RE: emptying a queuePosted by Alessandro de Manzano on March 13, 2010 Currently my data is not dynamically allocated, it's simple value data (like serial I/O, etc.), so I could do that, but IMHO the less memory is allocated/freeed, the best ;) Just for curiosity, why there is not a xQueueEmpty() method (atomic action) ? Just because it's not so often needed ? Thanks for answer! Ale
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|