shmdt - Detaches a shared memory region
const void *addr);
Application developers may want to specify #include statements for
<<sys/types.h>> and <<sys/ipc.h>> before the one for <<sys/shm.h>> if programs
are being developed for multiple platforms. The additional #include state-
ments are not required on Tru64 UNIX systems or by ISO or X/Open standards,
but may be required on other vendors' systems that conform to these stan-
Interfaces documented on this reference page conform to industry standards
shmdt(): XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about indus-
try standards and associated tags.
addr Specifies the starting virtual address for the shared memory
region to be detached. This is the address returned by a previ-
ous shmat() call.
The shmdt() function detaches the shared memory region at the address
specified by the addr parameter. Other instances of the region attached at
other addresses are unaffected.
Upon successful completion, the shmdt() function decrements the value of
shm_nattach in the data structure associated with the shared memory ID of
the attached shared memory segment and returns 0 (zero). Upon failure, the
shared memory segment is not detached, -1 is returned, and errno is set to
indicate the error.
The shmdt() function sets errno to the specified values for the following
[EINVAL] The addr parameter does not specify the starting address of a
shared memory region.
Functions: shmat(2), shmctl(2), shmget(2)
Data structures: shmid_ds(4)