summaryrefslogtreecommitdiffstats
path: root/man3/mq_notify.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/mq_notify.3')
-rw-r--r--man3/mq_notify.329
1 files changed, 14 insertions, 15 deletions
diff --git a/man3/mq_notify.3 b/man3/mq_notify.3
index bb0d514..591eb32 100644
--- a/man3/mq_notify.3
+++ b/man3/mq_notify.3
@@ -3,7 +3,7 @@
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
-.TH mq_notify 3 2023-07-20 "Linux man-pages 6.05.01"
+.TH mq_notify 3 2023-10-31 "Linux man-pages 6.7"
.SH NAME
mq_notify \- register for notification when a message is available
.SH LIBRARY
@@ -13,7 +13,7 @@ Real-time library
.nf
.B #include <mqueue.h>
.BR "#include <signal.h> " "/* Definition of SIGEV_* constants */"
-.PP
+.P
.BI "int mq_notify(mqd_t " mqdes ", const struct sigevent *" sevp );
.fi
.SH DESCRIPTION
@@ -22,15 +22,15 @@ allows the calling process to register or unregister for delivery of
an asynchronous notification when a new message arrives on
the empty message queue referred to by the message queue descriptor
.IR mqdes .
-.PP
+.P
The
.I sevp
argument is a pointer to a
.I sigevent
structure.
For the definition and general details of this structure, see
-.BR sigevent (7).
-.PP
+.BR sigevent (3type).
+.P
If
.I sevp
is a non-null pointer, then
@@ -54,7 +54,7 @@ for notification, but when a message arrives, no notification is sent.
Notify the process by sending the signal specified in
.IR sigev_signo .
See
-.BR sigevent (7)
+.BR sigevent (3type)
for general details.
The
.I si_code
@@ -75,26 +75,26 @@ Upon message delivery, invoke
.I sigev_notify_function
as if it were the start function of a new thread.
See
-.BR sigevent (7)
+.BR sigevent (3type)
for details.
-.PP
+.P
Only one process can be registered to receive notification
from a message queue.
-.PP
+.P
If
.I sevp
is NULL, and the calling process is currently registered to receive
notifications for this message queue, then the registration is removed;
another process can then register to receive a message notification
for this queue.
-.PP
+.P
Message notification occurs only when a new message arrives and
the queue was previously empty.
If the queue was not empty at the time
.BR mq_notify ()
was called, then a notification will occur only after
the queue is emptied and a new message arrives.
-.PP
+.P
If another process or thread is waiting to read a message
from an empty queue using
.BR mq_receive (3),
@@ -102,7 +102,7 @@ then any message notification registration is ignored:
the message is delivered to the process or thread calling
.BR mq_receive (3),
and the message notification registration remains in effect.
-.PP
+.P
Notification occurs once: after a notification is delivered,
the notification registration is removed,
and another process can register for message notification.
@@ -142,7 +142,7 @@ is not a valid signal number.
.TP
.B ENOMEM
Insufficient memory.
-.PP
+.P
POSIX.1-2008 says that an implementation
.I may
generate an
@@ -167,7 +167,6 @@ T{
.BR mq_notify ()
T} Thread safety MT-Safe
.TE
-.sp 1
.SH VERSIONS
.SS C library/kernel differences
In the glibc implementation, the
@@ -271,4 +270,4 @@ main(int argc, char *argv[])
.BR mq_send (3),
.BR mq_unlink (3),
.BR mq_overview (7),
-.BR sigevent (7)
+.BR sigevent (3type)