mq_close()
Close a message queue
Synopsis:
#include <mqueue.h>
int mq_close( mqd_t mqdes );
Arguments:
- mqdes
- The message-queue descriptor, returned by mq_open(), of the message queue that you want to close.
Library:
Description:
The mq_close() function removes the association between mqdes and a message queue. If the current process attaches a notify to this queue for notification, the attachment is eliminated. If this queue is unlinked before the call to mq_close(), and this process is the last process to call mq_close() on the queue, then the queue is destroyed, along with its contents.
Note:
The message queue manager needs to be running. QNX Neutrino supports two
implementations of message queues: a traditional implementation and an alternate one that uses the
mq server and a queue in kernel space. For more information, see the entries for
mq and mqueue
in the Utilities Reference, as well as the POSIX Message Queues: Two Implementations
technote.
In the traditional (mqueue) implementation, calling close() with mqdes has the same effect as calling mq_close().
Returns:
-1 if an error occurred (errno is set). Any other value indicates success.
Errors:
- EBADF
- Invalid queue mqdes.
Examples:
See the example for mq_open().
Classification:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | No |
| Thread | Yes |
Page updated:
