1SEM_DESTROY(3P)            POSIX Programmer's Manual           SEM_DESTROY(3P)
2
3
4

PROLOG

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

NAME

13       sem_destroy — destroy an unnamed semaphore
14

SYNOPSIS

16       #include <semaphore.h>
17
18       int sem_destroy(sem_t *sem);
19

DESCRIPTION

21       The sem_destroy() function shall destroy the  unnamed  semaphore  indi‐
22       cated  by  sem.  Only a semaphore that was created using sem_init() may
23       be destroyed using sem_destroy(); the effect of  calling  sem_destroy()
24       with  a  named  semaphore is undefined. The effect of subsequent use of
25       the semaphore sem is undefined until sem is  reinitialized  by  another
26       call to sem_init().
27
28       It  is  safe  to destroy an initialized semaphore upon which no threads
29       are currently blocked. The effect of destroying a semaphore upon  which
30       other threads are currently blocked is undefined.
31

RETURN VALUE

33       Upon  successful  completion, a value of zero shall be returned. Other‐
34       wise, a value of −1 shall be returned and errno  set  to  indicate  the
35       error.
36

ERRORS

38       The sem_destroy() function may fail if:
39
40       EINVAL The sem argument is not a valid semaphore.
41
42       EBUSY  There are currently processes blocked on the semaphore.
43
44       The following sections are informative.
45

EXAMPLES

47       None.
48

APPLICATION USAGE

50       None.
51

RATIONALE

53       None.
54

FUTURE DIRECTIONS

56       None.
57

SEE ALSO

59       semctl(), semget(), semop(), sem_init(), sem_open()
60
61       The Base Definitions volume of POSIX.1‐2008, <semaphore.h>
62
64       Portions  of  this text are reprinted and reproduced in electronic form
65       from IEEE Std 1003.1, 2013 Edition, Standard for Information Technology
66       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
67       Specifications Issue 7, Copyright (C) 2013 by the Institute of Electri‐
68       cal  and  Electronics  Engineers,  Inc  and  The  Open Group.  (This is
69       POSIX.1-2008 with the 2013 Technical Corrigendum  1  applied.)  In  the
70       event of any discrepancy between this version and the original IEEE and
71       The Open Group Standard, the original IEEE and The Open Group  Standard
72       is  the  referee document. The original Standard can be obtained online
73       at http://www.unix.org/online.html .
74
75       Any typographical or formatting errors that appear  in  this  page  are
76       most likely to have been introduced during the conversion of the source
77       files to man page format. To report such errors,  see  https://www.ker
78       nel.org/doc/man-pages/reporting_bugs.html .
79
80
81
82IEEE/The Open Group                  2013                      SEM_DESTROY(3P)
Impressum