Man Linux: Main Page and Category List

NAME

       semaphore.h - semaphores (REALTIME)

SYNOPSIS

       #include <semaphore.h>

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 symbol SEM_FAILED
       shall be defined (see sem_open()).

       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 headers <fcntl.h> and <sys/types.h>.

       The following sections are informative.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       <fcntl.h>   ,   <sys/types.h>   ,   the  System  Interfaces  volume  of
       IEEE Std 1003.1-2001,   sem_destroy(),   sem_getvalue(),    sem_init(),
       sem_open(),  sem_post(),  sem_timedwait(), sem_trywait(), sem_unlink(),
       sem_wait()

COPYRIGHT

       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the  referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .