 |
Index for Section 3 |
|
 |
Alphabetical listing for M |
|
 |
Bottom of page |
|
msem_unlock(3)
NAME
msem_unlock - Unlock a semaphore
SYNOPSIS
#include <sys/mman.h>
int msem_unlock(
msemaphore *sem,
int condition );
LIBRARY
Standard C Library (libc)
PARAMETERS
sem Points to an msemaphore structure which specifies the semaphore to be
unlocked.
condition
Determines whether the msem_unlock() function unlocks the semaphore if
no other processes are waiting to lock it.
DESCRIPTION
The msem_unlock() function unlocks a binary semaphore.
If the condition parameter is 0 (zero), the semaphore is unlocked, whether
or not any other processes are currently attempting to lock it. If the
condition parameter is MSEM_IF_WAITERS, and another process is waiting to
lock the semaphore or it cannot be reliably determined whether some process
is waiting to lock the semaphore, the semaphore is unlocked by the calling
process. If the condition parameter is MSEM_IF_WAITERS, and no process is
waiting to lock the semaphore, the semaphore will not be unlocked and an
error will be returned.
All calls to the msem_lock() and msem_unlock() functions by multiple
processes sharing a common msemaphore structure behave as if the calls were
serialized.
If the msemaphore structure contains any value not resulting from a call to
the msem_init() function followed by a (possibly empty) sequence of calls
to the msem_lock() and msem_unlock() functions, the results are undefined.
The address of an msemaphore structure may be significant. If the
msemaphore structure contains any value copied from an msemaphore structure
at a different address, the result is undefined.
NOTES
AES Support Level:
Trial use
RETURN VALUES
On successful completion, the msem_unlock() function returns 0 (zero). On
error, the msem_unlock() function returns -1 and sets errno to indicate the
error.
ERRORS
If the msem_unlock() function fails, errno may be set to one of the
following values:
[EAGAIN]
MSEM_IF_WAITERS was specified and there were no waiters.
[EINVAL]
The sem parameter points to an msemaphore structure which specifies a
semaphore which has been removed, or the condition parameter is
invalid.
SEE ALSO
Functions: msem_init(3), msem_lock(3), msem_remove(3)
 |
Index for Section 3 |
|
 |
Alphabetical listing for M |
|
 |
Top of page |
|