.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
.TH "SEM_CLOSE" 3P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
.\" sem_close
.SH 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.
.SH NAME
sem_close \- close a named semaphore (\fBREALTIME\fP)
.SH SYNOPSIS
.LP
\fB#include <semaphore.h>
.br
.sp
int sem_close(sem_t *\fP\fIsem\fP\fB); \fP
\fB
.br
\fP
.SH DESCRIPTION
.LP
The \fIsem_close\fP() function shall indicate that the calling process
is finished using the named semaphore indicated by
\fIsem\fP. The effects of calling \fIsem_close\fP() for an unnamed
semaphore (one created by \fIsem_init\fP()) are undefined. The \fIsem_close\fP()
function shall deallocate (that is, make
available for reuse by a subsequent \fIsem_open\fP() by this process)
any system
resources allocated by the system for use by this process for this
semaphore. The effect of subsequent use of the semaphore
indicated by \fIsem\fP by this process is undefined. If the semaphore
has not been removed with a successful call to \fIsem_unlink\fP(),
then \fIsem_close\fP() has no effect on the state of the semaphore.
If the
\fIsem_unlink\fP() function has been successfully invoked for \fIname\fP
after the
most recent call to \fIsem_open\fP() with O_CREAT for this semaphore,
then when all
processes that have opened the semaphore close it, the semaphore is
no longer accessible.
.SH RETURN VALUE
.LP
Upon successful completion, a value of zero shall be returned. Otherwise,
a value of -1 shall be returned and \fIerrno\fP set
to indicate the error.
.SH ERRORS
.LP
The \fIsem_close\fP() function shall fail if:
.TP 7
.B EINVAL
The \fIsem\fP argument is not a valid semaphore descriptor.
.sp
.LP
\fIThe following sections are informative.\fP
.SH EXAMPLES
.LP
None.
.SH APPLICATION USAGE
.LP
The \fIsem_close\fP() function is part of the Semaphores option and
need not be available on all implementations.
.SH RATIONALE
.LP
None.
.SH FUTURE DIRECTIONS
.LP
None.
.SH SEE ALSO
.LP
\fIsemctl\fP(), \fIsemget\fP(), \fIsemop\fP(),
\fIsem_init\fP(), \fIsem_open\fP(), \fIsem_unlink\fP(), the Base
Definitions volume of IEEE\ Std\ 1003.1-2001, \fI<semaphore.h>\fP
.SH 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 .
|