Updated: April 19, 2023 |
Close a message queue
#include <mqueue.h> int mq_close( mqd_t mqdes );
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.
In the traditional (mqueue) implementation, calling close() with mqdes has the same effect as calling mq_close().
-1 if an error occurred (errno is set). Any other value indicates success.
See the example for mq_open().
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | No |
Thread | Yes |