sem_getvalue(3)



SEM_GETVALUE(3)            Linux Programmer's Manual           SEM_GETVALUE(3)

NAME
       sem_getvalue - get the value of a semaphore

SYNOPSIS
       #include <semaphore.h>

       int sem_getvalue(sem_t *sem, int *sval);

       Link with -pthread.

DESCRIPTION
       sem_getvalue() places the current value of the semaphore pointed to sem
       into the integer pointed to by sval.

       If one or more processes or threads are blocked  waiting  to  lock  the
       semaphore  with  sem_wait(3), POSIX.1 permits two possibilities for the
       value returned in sval: either 0 is  returned;  or  a  negative  number
       whose  absolute  value  is  the  count  of  the number of processes and
       threads currently blocked in sem_wait(3).  Linux adopts the former  be-
       havior.

RETURN VALUE
       sem_getvalue() returns 0 on success; on error, -1 is returned and errno
       is set to indicate the error.

ERRORS
       EINVAL sem is not a valid semaphore.  (The  glibc  implementation  cur-
              rently does not check whether sem is valid.)

ATTRIBUTES
       For  an  explanation  of  the  terms  used  in  this  section,  see at-
       tributes(7).

       +---------------+---------------+---------+
       |Interface      | Attribute     | Value   |
       +---------------+---------------+---------+
       |sem_getvalue() | Thread safety | MT-Safe |
       +---------------+---------------+---------+
CONFORMING TO
       POSIX.1-2001, POSIX.1-2008.

NOTES
       The value of the  semaphore  may  already  have  changed  by  the  time
       sem_getvalue() returns.

SEE ALSO
       sem_post(3), sem_wait(3), sem_overview(7)

COLOPHON
       This  page  is  part of release 5.07 of the Linux man-pages project.  A
       description of the project, information about reporting bugs,  and  the
       latest     version     of     this    page,    can    be    found    at
       https://www.kernel.org/doc/man-pages/.

Linux                             2020-06-09                   SEM_GETVALUE(3)

Man(1) output converted with man2html
list of all man pages