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  sem_destroy()  function shall destroy the unnamed semaphore indicated by sem.  Only a semaphore that
       was created using sem_init() may be destroyed using sem_destroy(); the effect  of  calling  sem_destroy()
       with a named semaphore is undefined. The effect of subsequent use of the semaphore sem is undefined until
       sem is reinitialized by another call to sem_init().

       It is safe to destroy an initialized semaphore upon which no threads are currently blocked. The effect of
       destroying a semaphore upon which other threads are currently blocked is undefined.

Errors

       The sem_destroy() function may fail if:

       EINVAL The sem argument is not a valid semaphore.

       EBUSY  There are currently processes blocked on the semaphore.

       Thefollowingsectionsareinformative.

Examples

       None.

Future Directions

       None.

Name

       sem_destroy — destroy an unnamed semaphore

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.

Return Value

       Upon successful completion, a value of zero shall be returned. Otherwise, a value of -1 shall be returned
       and errno set to indicate the error.

See Also

semctl(), semget(), semop(), sem_init(), sem_open()

       The Base Definitions volume of POSIX.1‐2017, <semaphore.h>

Synopsis

       #include <semaphore.h>

       int sem_destroy(sem_t *sem);

See Also