int
sem_getvalue(
sem_t * restrict sem
, int * restrict sval
)
)
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.
)
will fail if:
EINVAL
]
sem
points to an invalid semaphore.
)
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 wording of the specification.