mq_send(2)mq_send(2)NAMEmq_send - send a message to a message queue
SYNOPSISDESCRIPTION
The system call adds a message pointed to by the argument msg_ptr to
the message queue specified by mqdes. The msg_len argument specifies
the length of the message in bytes. The value of msg_len should be less
than or equal to the mq_msgsize attribute of the message queue, or will
fail.
If the specified message queue is not full, will insert the message
into the queue at the position indicated by the msg_prio argument. A
message with priority, msg_prio, will be inserted behind any other mes‐
sages with larger or equal priority. The value of msg_prio should be
less than
If the specified message queue is full and the flag is not set in the
message queue blocking status associated with mqdes, will block in pri‐
ority order, until it can send a message on the queue, or until is
interrupted by a signal. If the specified message queue is full and
the flag is set in the message queue blocking status associated with
mqdes, the message will not be enqueued, and will return with an error.
To use this function, link in the realtime library by specifying on the
compiler or linker command line.
RETURN VALUE
returns the following values:
Successful completion. The message is enqueued.
Failure.
is set to indicate the error and the message is not
enqueued.
ERRORS
If fails, is set to one of the following values:
[EAGAIN] The flag is set in the message queue blocking
status associated with mqdes, and the message
queue is full.
[EBADF] mqdes is not a valid message queue descriptor
open for writing.
[EINTR] A signal interrupted the call to
[EINVAL] msg_ptr points to an invalid address, or the
value of msg_prio is outside the valid range.
[EMSGSIZE] The specified message length, msg_len, exceeds
the message size attribute of the message queue.
[ENOSYS] is not supported by the implementation.
SEE ALSOmq_receive(2), mq_setattr(2), mq_getattr(2), sysconf(2).
STANDARDS CONFORMANCEmq_send(2)