trusty (3) sem_unlink.3posix.gz

Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       sem_unlink - remove a named semaphore (REALTIME)

SYNOPSIS

       #include <semaphore.h>

       int sem_unlink(const char *name);

DESCRIPTION

       The  sem_unlink() function shall remove the semaphore named by the string name. If the semaphore named by
       name is currently referenced by other processes, then sem_unlink() shall have no effect on the  state  of
       the  semaphore. If one or more processes have the semaphore open when sem_unlink() is called, destruction
       of the semaphore is postponed until all references to the semaphore  have  been  destroyed  by  calls  to
       sem_close(),  _exit(),  or exec. Calls to sem_open() to recreate or reconnect to the semaphore refer to a
       new semaphore after sem_unlink() is called. The sem_unlink() call shall not block  until  all  references
       have been destroyed; it shall return immediately.

RETURN VALUE

       Upon successful completion, the sem_unlink() function shall return a value of 0. Otherwise, the semaphore
       shall not be changed and the function shall return a value of -1 and set errno to indicate the error.

ERRORS

       The sem_unlink() function shall fail if:

       EACCES Permission is denied to unlink the named semaphore.

       ENAMETOOLONG
              The length of the name argument  exceeds  {PATH_MAX}  or  a  pathname  component  is  longer  than
              {NAME_MAX}.

       ENOENT The named semaphore does not exist.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       The  sem_unlink()  function  is  part  of  the  Semaphores  option  and  need  not  be  available  on all
       implementations.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       semctl()  ,  semget()  ,  semop()  ,  sem_close()  ,  sem_open()  ,  the  Base  Definitions   volume   of
       IEEE Std 1003.1-2001, <semaphore.h>

       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 .