RTEMS  5.1
Data Fields
CORE_message_queue_Control Struct Reference

Control block used to manage each message queue. More...

#include <coremsg.h>

Data Fields

Thread_queue_Control Wait_queue
 
const Thread_queue_Operationsoperations
 The thread queue operations according to the blocking discipline.
 
uint32_t maximum_pending_messages
 
uint32_t number_of_pending_messages
 
size_t maximum_message_size
 
Chain_Control Pending_messages
 
CORE_message_queue_Buffermessage_buffers
 
Chain_Control Inactive_messages
 

Detailed Description

Control block used to manage each message queue.

The following defines the control block used to manage each Message Queue.

Field Documentation

◆ Inactive_messages

Chain_Control CORE_message_queue_Control::Inactive_messages

This chain is the set of inactive messages. A message is inactive when it does not contain a pending message.

◆ maximum_message_size

size_t CORE_message_queue_Control::maximum_message_size

This is the size in bytes of the largest message which may be sent via this queue.

◆ maximum_pending_messages

uint32_t CORE_message_queue_Control::maximum_pending_messages

This element is maximum number of messages which may be pending at any given time.

◆ message_buffers

CORE_message_queue_Buffer* CORE_message_queue_Control::message_buffers

This is the address of the memory allocated for message buffers. It is allocated are part of message queue initialization and freed as part of destroying it.

◆ number_of_pending_messages

uint32_t CORE_message_queue_Control::number_of_pending_messages

This element is the number of messages which are currently pending.

◆ Pending_messages

Chain_Control CORE_message_queue_Control::Pending_messages

This chain is the set of pending messages. It may be ordered by message priority or in FIFO order.

◆ Wait_queue

Thread_queue_Control CORE_message_queue_Control::Wait_queue

This field is the Waiting Queue used to manage the set of tasks which are blocked waiting to receive a message from this queue.


The documentation for this struct was generated from the following file: