RTEMS
Public Attributes | List of all members
CORE_message_queue_Control Struct Reference

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

#include <coremsg.h>

Public Attributes

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
 
void(* free_message_buffers )(void *)
 This member contains the optional message buffer storage area free handler. More...
 
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.

Definition at line 96 of file coremsg.h.

Member Data Documentation

◆ free_message_buffers

void( * CORE_message_queue_Control::free_message_buffers) (void *)

This member contains the optional message buffer storage area free handler.

It may be NULL. In this case no action is performed to free the message buffer storage area.

Definition at line 135 of file coremsg.h.

◆ 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.

Definition at line 146 of file coremsg.h.

◆ 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.

Definition at line 117 of file coremsg.h.

◆ 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.

Definition at line 110 of file coremsg.h.

◆ 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.

Definition at line 126 of file coremsg.h.

◆ 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.

Definition at line 113 of file coremsg.h.

◆ 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.

Definition at line 121 of file coremsg.h.

◆ 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.

Definition at line 100 of file coremsg.h.


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