Quality RTOS & Embedded Software

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


Memory leak ?

Posted by pajk on January 17, 2009

I am new in the filed of FreeRtos. I have a simple question regarding code.

Inside function:

xQueueGenericSend( xQueueHandle pxQueue, const void * const pvItemToQueue, portTickType xTicksToWait, portBASE_TYPE xCopyPosition )

In case function was called with xTicksToWait >0 and situation happened to be next:
--- queue is full
--- task has not yet timed out we (xTaskCheckForTimeOut returns false)

as consequence we call vTaskPlaceOnEventList( &( pxQueue->xTasksWaitingToSend ), xTicksToWait ); in each iteration of do-while loop.

Question: Will not waiting list build up in size (memory leak) ?


RE: Memory leak ?

Posted by Richard on January 17, 2009
I'm not sure I completely understand your question - but once a task has been placed on the event list it is in the Blocked state and will not run again until it has been unblocked. Therefore it cannot be placed on the event list again until it has already been unblocked and removed from the event list. It will therefore only be on the event list at most once at any particular time.


RE: Memory leak ?

Posted by pajk on January 31, 2009

Richard , it is like you wrote. After weekend inspecting the code I must agree with you.

This topic needs no further debate, so it should be closed.

Thanks again, Richard. Your advice led me the right way.

Izi Pajk

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

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

Latest News

FreeRTOS v10.2.0 is available for immediate download. MIT licensed, and including RISC-V and ARMv8-M (Cortex-M33) demos.

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


FreeRTOS and other embedded software careers at AWS.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Cadence Tensilica Cortes

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