33 Status_Control status;
35 if ( buffer == NULL ) {
39 the_message_queue = _Message_queue_Get(
id, &queue_context );
41 if ( the_message_queue == NULL ) {
42 #if defined(RTEMS_MULTIPROCESSING) 43 return _Message_queue_MP_Send(
id, buffer, size );
55 _Message_queue_Core_message_queue_mp_support
64 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.
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.
static __inline__ Status_Control _CORE_message_queue_Send(CORE_message_queue_Control *the_message_queue, const void *buffer, size_t size, bool wait, Thread_queue_Context *queue_context)
Sends a message to the message queue.
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_send(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.