32 Status_Control status;
34 if ( buffer == NULL ) {
38 the_message_queue = _Message_queue_Get(
id, &queue_context );
40 if ( the_message_queue == NULL ) {
41 #if defined(RTEMS_MULTIPROCESSING) 42 return _Message_queue_MP_Urgent(
id, buffer, size );
54 _Message_queue_Core_message_queue_mp_support
63 return _Status_Get( status );
Thread queue context for the thread queue methods.
Classic Message Queue Manager Implementation.
#define _Thread_queue_Context_set_MP_callout(queue_context, mp_callout)
Sets the MP callout in the thread queue context.
static __inline__ Status_Control _CORE_message_queue_Urgent(CORE_message_queue_Control *the_message_queue, const void *buffer, size_t size, bool wait, Thread_queue_Context *queue_context)
Sends an urgent message to the message queue.
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Classic Status Implementation.
CORE_message_queue_Control message_queue
This status code indicates that a specified address was invalid.
This status code indicates that an object identifier was invalid.
Objects_Id rtems_id
Values of this type identify an RTEMS object.
rtems_status_code rtems_message_queue_urgent(rtems_id id, const void *buffer, size_t size)
%
static __inline__ void _CORE_message_queue_Acquire_critical(CORE_message_queue_Control *the_message_queue, Thread_queue_Context *queue_context)
Acquires the message queue critical.