DragonFly On-Line Manual Pages
SEM_GETVALUE(3) DragonFly Library Functions Manual SEM_GETVALUE(3)
sem_getvalue -- get the value of a semaphore
POSIX Threads Library (libpthread, -lpthread)
sem_getvalue(sem_t *sem, int *sval);
The sem_getvalue() function sets the variable pointed to by sval to the
current value of the semaphore pointed to by sem, as of the time that the
call to sem_getvalue() is actually run.
The sem_getvalue() function returns the value 0 if successful; otherwise
the value -1 is returned and the global variable errno is set to indicate
sem_getvalue() will fail if:
[EINVAL] sem points to an invalid semaphore.
sem_post(3), sem_trywait(3), sem_wait(3)
sem_getvalue() conforms to ISO/IEC 9945-1:1996 (``POSIX.1'').
The value of the semaphore is never negative, even if there are threads
blocked on the semaphore. POSIX is somewhat ambiguous in its wording
with regard to what the value of the semaphore should be if there are
blocked waiting threads, but this behavior is conformant, given the word-
ing of the specification.
DragonFly 4.3 April 15, 2009 DragonFly 4.3