*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->HP-UX 11i man pages -> mq_send (2)              
Title
Content
Arch
Section
 

Contents


 mq_send(2)                                                       mq_send(2)




 NAME    [Toc]    [Back]
      mq_send - send a message to a message queue

 SYNOPSIS    [Toc]    [Back]
      #include <sys/mqueue.h>

      int mq_send(mqd_t        mqdes,
                  const char   *msg_ptr,
                  size_t       msg_len,
                  unsigned int msg_prio
      );

 DESCRIPTION    [Toc]    [Back]
      The mq_send() 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 mq_send() will fail.

      If the specified message queue is not full, mq_send() 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 messages with larger or equal priority.  The value of
      msg_prio should be less than MQ_PRIO_MAX.

      If the specified message queue is full and the O_NONBLOCK flag is not
      set in the message queue blocking status associated with mqdes,
      mq_send() will block in priority order, until it can send a message on
      the queue, or until mq_send() is interrupted by a signal.  If the
      specified message queue is full and the O_NONBLOCK flag is set in the
      message queue blocking status associated with mqdes, the message will
      not be enqueued, and mq_send() will return with an error.

      To use this function, link in the realtime library by specifying -lrt
      on the compiler or linker command line.

 RETURN VALUE    [Toc]    [Back]
      mq_send() returns the following values:

           0    Successful completion. The message is enqueued.

           -1   Failure.  errno is set to indicate the error and the message
                is not enqueued.

 ERRORS    [Toc]    [Back]
      If mq_send() fails, errno is set to one of the following values:

           [EAGAIN]       The O_NONBLOCK flag is set in the message queue
                          blocking status associated with mqdes, and the
                          message queue is full.




 Hewlett-Packard Company            - 1 -      HP-UX 11i Version 2: Sep 2004






 mq_send(2)                                                       mq_send(2)




           [EBADF]        mqdes is not a valid message queue descriptor open
                          for writing.

           [EINTR]        A signal interrupted the call to mq_send().

           [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]       mq_send() is not supported by the implementation.

 SEE ALSO    [Toc]    [Back]
      mq_receive(2), mq_setattr(2), mq_getattr(2), sysconf(2).

 STANDARDS CONFORMANCE    [Toc]    [Back]
      mq_send(): POSIX 1003.1b


 Hewlett-Packard Company            - 2 -      HP-UX 11i Version 2: Sep 2004
[ Back ]
      
      
 Similar pages
Name OS Title
mq_send IRIX send a message to a queue
mq_open Tru64 Establishes the connection between a message queue and a message queue descriptor (P1003.1b)
mq_receive Tru64 Receives the oldest, highest-priority message from the message queue (P1003.1b)
mq_send Tru64 Places a message in the message queue (P1003.1b)
send Tru64 send a message (only available within the message handling system, mh)
sendmsg Tru64 Send a message from a socket using a message structure
msgrcv NetBSD receive a message from a message queue
msgrcv OpenBSD receive a message from a message queue
msgrcv Tru64 Receive a message from a message queue
msgrcv FreeBSD receive a message from a message queue
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service