mq_notify(3c) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

mq_notify(3c)

mq_notify(3C)            Standard C Library Functions            mq_notify(3C)

NAME
       mq_notify - notify process (or thread) that a message is available on a
       queue

SYNOPSIS
       #include <mqueue.h>

       int mq_notify(mqd_t mqdes, const struct sigevent *notification);

DESCRIPTION
       The   mq_notify()  function  provides  an  asynchronous  mechanism  for
       processes to receive notice that messages are available  in  a  message
       queue, rather than synchronously blocking (waiting) in mq_receive(3C).


       If  notification  is  not  NULL,  this  function  registers the calling
       process to be notified of message arrival at an empty message queue as‐
       sociated with the message queue  descriptor,  mqdes.  The  notification
       specified  by notification will be sent to the process when the message
       queue transitions from empty to non-empty. See signal.h(3HEAD). At  any
       time, only one process may be registered for notification by a specific
       message  queue. If the calling process or any other process has already
       registered for notification of message arrival at the specified message
       queue, subsequent attempts to register  for  that  message  queue  will
       fail.


       If notification is NULL and the process is currently registered for no‐
       tification by the specified message queue, the existing registration is
       removed. The message queue is then available for future registration.


       When  the notification is sent to the registered process, its registra‐
       tion is removed. The message queue is then available for registration.


       If a process has registered for notification of message  arrival  at  a
       message  queue  and some processes is blocked in mq_receive(3C) waiting
       to receive a message when a message arrives at the queue, the  arriving
       message  will be received by the appropriate mq_receive(3C), and no no‐
       tification will be sent to the registered process. The resulting behav‐
       ior is as if the message queue remains  empty,  and  this  notification
       will not be sent until the next arrival of a message at this queue.


       Any  notification registration is removed if the calling process either
       closes the message queue or exits.

RETURN VALUES
       Upon successful completion, mq_notify() returns 0;  otherwise,  it  re‐
       turns −1 and sets errno to indicate the error.

ERRORS
       The mq_notify() function will fail if:

       EBADF    The mqdes argument is not a valid message queue descriptor.


       EBUSY    A  process  is already registered for notification by the mes‐
                sage queue.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE  VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe _ Stan‐
       dardSee standards(7).


SEE ALSO
       mq_close(3C),      mq_open(3C),      mq_receive(3C),       mq_send(3C),
       mqueue.h(3HEAD),   siginfo.h(3HEAD),   signal.h(3HEAD),  attributes(7),
       standards(7)

Oracle Solaris 11.4               5 Feb 2008                     mq_notify(3C)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3