Documentation Archive Developer
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages


This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).

SHM_UNLINK(2)               BSD System Calls Manual              SHM_UNLINK(2)

     shm_unlink -- remove shared memory object

     #include <sys/mman.h>

     shm_unlink(const char *name);

     The shm_unlink() function disassociates the shared memory object speci-fied specified
     fied by name from that name.  The resources associated with the shared
     memory object remain intact until the last file descriptor reference is
     removed, e.g., by close(2) or munmap(2), at which point the resources are
     reclaimed (if no references exist at the time of the call to
     shm_unlink(), the resources are reclaimed immediately).  The name can
     only be reused when it is bound to a new shared memory object with a call
     to shm_open(2) with the O_CREAT flag.

     Upon successful completion, a value of 0 is returned.  Otherwise, a value
     of -1 is returned and errno is set to indicate the error, and the named
     shared memory object will remain unchanged.

     The shm_unlink() succeeds unless:

     [EACCES]           Permission is denied to be remove the object.

     [ENAMETOOLONG]     name exceeded SHM_NAME_MAX characters.

     [ENOENT]           The named object does not exist.

     close(2), mmap(2), munmap(2), shm_open(2), shmat(2), shmctl(2)

     shm_open() is specified in the POSIX Realtime Extension

Darwin                          August 31, 2006                         Darwin