logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       None.

Description

       The  <semaphore.h>  header  shall  define  the  sem_t  type, used in performing semaphore operations. The
       semaphore may be implemented using a file descriptor, in which case applications are able to open  up  at
       least a total of {OPEN_MAX} files and semaphores.

       The <semaphore.h> header shall define the symbolic constant SEM_FAILED which shall have type sem_t*.

       The following shall be declared as functions and may also be defined as macros. Function prototypes shall
       be provided.

           int    sem_close(sem_t *);
           int    sem_destroy(sem_t *);
           int    sem_getvalue(sem_t *restrict, int *restrict);
           int    sem_init(sem_t *, int, unsigned);
           sem_t *sem_open(const char *, int, ...);
           int    sem_post(sem_t *);
           int    sem_timedwait(sem_t *restrict, const struct timespec *restrict);
           int    sem_trywait(sem_t *);
           int    sem_unlink(const char *);
           int    sem_wait(sem_t *);

       Inclusion  of  the  <semaphore.h>  header  may make visible symbols defined in the <fcntl.h> and <time.h>
       headers.

       Thefollowingsectionsareinformative.

Future Directions

       None.

Name

       semaphore.h — semaphores

Prolog

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

Rationale

       None.

See Also

<fcntl.h>, <sys_types.h>, <time.h>

       The System Interfaces volume of POSIX.1‐2017,  sem_close(),  sem_destroy(),  sem_getvalue(),  sem_init(),
       sem_open(), sem_post(), sem_timedwait(), sem_trywait(), sem_unlink()

Synopsis

       #include <semaphore.h>

See Also