mirror of https://github.com/mkerrisk/man-pages
87 lines
3.0 KiB
Plaintext
87 lines
3.0 KiB
Plaintext
.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
|
|
.TH "SHM_UNLINK" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
|
|
.\" shm_unlink
|
|
.SH NAME
|
|
shm_unlink \- remove a shared memory object (\fBREALTIME\fP)
|
|
.SH SYNOPSIS
|
|
.LP
|
|
\fB#include <sys/mman.h>
|
|
.br
|
|
.sp
|
|
int shm_unlink(const char *\fP\fIname\fP\fB); \fP
|
|
\fB
|
|
.br
|
|
\fP
|
|
.SH DESCRIPTION
|
|
.LP
|
|
The \fIshm_unlink\fP() function shall remove the name of the shared
|
|
memory object named by the string pointed to by
|
|
\fIname\fP.
|
|
.LP
|
|
If one or more references to the shared memory object exist when the
|
|
object is unlinked, the name shall be removed before
|
|
\fIshm_unlink\fP() returns, but the removal of the memory object contents
|
|
shall be postponed until all open and map references to
|
|
the shared memory object have been removed.
|
|
.LP
|
|
Even if the object continues to exist after the last \fIshm_unlink\fP(),
|
|
reuse of the name shall subsequently cause \fIshm_open\fP() to behave
|
|
as if no shared memory object of this name exists (that is, \fIshm_open\fP()
|
|
will fail if O_CREAT is not set, or will create a new shared memory
|
|
object if
|
|
O_CREAT is set).
|
|
.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. If -1 is returned, the named shared memory
|
|
object shall not be changed by this function call.
|
|
.SH ERRORS
|
|
.LP
|
|
The \fIshm_unlink\fP() function shall fail if:
|
|
.TP 7
|
|
.B EACCES
|
|
Permission is denied to unlink the named shared memory object.
|
|
.TP 7
|
|
.B ENAMETOOLONG
|
|
The length of the \fIname\fP argument exceeds {PATH_MAX} or a pathname
|
|
component is longer than {NAME_MAX}.
|
|
.TP 7
|
|
.B ENOENT
|
|
The named shared memory object does not exist.
|
|
.sp
|
|
.LP
|
|
\fIThe following sections are informative.\fP
|
|
.SH EXAMPLES
|
|
.LP
|
|
None.
|
|
.SH APPLICATION USAGE
|
|
.LP
|
|
Names of memory objects that were allocated with \fIopen\fP() are
|
|
deleted with \fIunlink\fP() in the usual fashion. Names of memory
|
|
objects that were allocated with \fIshm_open\fP() are deleted with
|
|
\fIshm_unlink\fP(). Note that the actual memory object is not
|
|
destroyed until the last close and unmap on it have occurred if it
|
|
was already in use.
|
|
.SH RATIONALE
|
|
.LP
|
|
None.
|
|
.SH FUTURE DIRECTIONS
|
|
.LP
|
|
None.
|
|
.SH SEE ALSO
|
|
.LP
|
|
\fIclose\fP() , \fImmap\fP() , \fImunmap\fP() , \fIshmat\fP() , \fIshmctl\fP()
|
|
, \fIshmdt\fP() , \fIshm_open\fP() , the Base Definitions volume of
|
|
IEEE\ Std\ 1003.1-2001, \fI<sys/mman.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 .
|