NAME
msem_remove — remove a semaphore in mapped file or anonymous region
SYNOPSIS
#include <sys/mman.h>
int *msem_remove(msemaphore *sem);
DESCRIPTION
msem_remove()
removes a binary semaphore.
sem
points to an
msemaphore
structure that specifies the semaphore to be removed.
Any subsequent use of the
msemaphore
structure before it is again initialized by calling
msem_init()
produces undefined results.
msem_remove()
also causes any process waiting in the
msem_lock()
function on the removed semaphore to return with an error.
If the
msemaphore
structure contains any value not resulting from a call to
msem_init()
followed by a (possibly empty) sequence of calls to
msem_lock()
and
msem_unlock(),
the results are undefined.
The address of an
msemaphore
uniquely identifies the semaphore.
If the
msemaphore
structure contains any value copied from a
msemaphore
structure at a different address, the result is undefined.
RETURN VALUE
Upon success,
msem_remove()
returns zero;
otherwise, it returns -1 and sets
errno
to indicate the error.
ERRORS
msem_remove()
fails if any of the following conditions are encountered:
- [EINVAL]
sem
points to an
msemaphore
structure that has been removed.
- [EFAULT]
sem
is an invalid pointer.
AUTHOR
msem_remove()
was developed by HP and OSF.
STANDARDS CONFORMANCE
msem_remove(): AES