# xQueueReceive implementation

**URL:** <https://forums.freertos.org/t/xqueuereceive-implementation/2177>\
**Category:** Kernel\
**Created:** [November 3, 2005, 8:17pm UTC](https://forums.freertos.org/t/xqueuereceive-implementation/2177 "2005-11-03T20:17:28Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [November 3, 2005, 8:17pm UTC](https://forums.freertos.org/t/xqueuereceive-implementation/2177/1 "2005-11-03T20:17:28Z")

</div>

**nobody** wrote on [Thursday, November 03, 2005](https://sourceforge.net/p/freertos/discussion/382005/thread/607a8679/#b5e6):

Hallo,  
I am used the FreeRTOS Queue in an application and want to be sure that:  
when l call xQueueReceive(p1,p2,p3…) then the received item is deleted from the Queue, so that i dont need to delete it myself.  
This is surely a nonsence question but l just want to be sure.🙂

Best regards

-Emeric

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [November 4, 2005, 1:29pm UTC](https://forums.freertos.org/t/xqueuereceive-implementation/2177/2 "2005-11-04T13:29:34Z")

</div>

**nobody** wrote on [Friday, November 04, 2005](https://sourceforge.net/p/freertos/discussion/382005/thread/607a8679/#b5e6/79f3):

Items are queued by copy.&nbsp; If you want to queue a large data structure it is therefore best to queue a reference to the data rather than the data itself.

Whether a reference or the actual data, the item is copied to the queue storage area, then copied out again when you retrieve the item.&nbsp; You do not need to manage the queue storage area yourself - the queue handles this.&nbsp;

There is no dynamic memory allocation other than when the queue is originally created.

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [November 4, 2005, 1:33pm UTC](https://forums.freertos.org/t/xqueuereceive-implementation/2177/3 "2005-11-04T13:33:03Z")

</div>

**nobody** wrote on [Friday, November 04, 2005](https://sourceforge.net/p/freertos/discussion/382005/thread/607a8679/#b5e6/dad7):

Items are queued by copy.&nbsp; If you want to queue a large data structure it is therefore best to queue a reference to the data rather than the data itself.

Whether a reference or the actual data, the item is copied to the queue storage area, then copied out again when you retrieve the item.&nbsp; You do not need to manage the queue storage area yourself - the queue handles this.&nbsp;

There is no dynamic memory allocation other than when the queue is originally created.
