The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition
Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.

#### NAME

> mq_close - close a message queue (REALTIME)

#### SYNOPSIS

> ``[MSG] #include <mqueue.h>
> int mq_close(mqd_t` mqdes`);``
> `
> `

#### DESCRIPTION

> The mq_close() function shall remove the association between the message queue descriptor, mqdes, and its message queue. The results of using this message queue descriptor after successful return from this mq_close(), and until the return of this message queue descriptor from a subsequent mq_open(), are undefined.

> If the process has successfully attached a notification request to the message queue via this mqdes, this attachment shall be removed, and the message queue is available for another process to attach for notification.

#### RETURN VALUE

> Upon successful completion, the mq_close() function shall return a value of zero; otherwise, the function shall return a value of -1 and set errno to indicate the error.

#### ERRORS

> The mq_close() function shall fail if:

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

The following sections are informative.

#### EXAMPLES

> None.

#### APPLICATION USAGE

> None.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> mq_open(), mq_unlink(), msgctl(), msgget(), msgrcv(), msgsnd(), the Base Definitions volume of IEEE Std 1003.1-2001, <mqueue.h>

#### CHANGE HISTORY

> First released in Issue 5. Included for alignment with the POSIX Realtime Extension.

#### Issue 6

> The mq_close() function is marked as part of the Message Passing option.

> The [ENOSYS] error condition has been removed as stubs need not be provided if an implementation does not support the Message Passing option.

End of informative text.

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]