dlclose(3X) MISCELLANEOUS LIBRARY FUNCTIONS dlclose(3X)
NAME
dlclose - close a shared object
SYNOPSIS
cc [flag ...] file ... -ldl [library ...]
#include <dlfcn.h>
int dlclose(void *handle);
DESCRIPTION
dlclose disassociates a shared object previously opened by
dlopen from the current process. Once an object has been
closed using dlclose, its symbols are no longer available to
dlsym. All objects loaded automatically as a result of
invoking dlopen on the referenced object [see dlopen(3X)]
are also closed. handle is the value returned by a previous
invocation of dlopen.
SEE ALSO
dlerror(3X), dlopen(3X), dlsym(3X).
DIAGNOSTICS
If the referenced object was successfully closed, dlclose
returns 0. If the object could not be closed, or if handle
does not refer to an open object, dlclose returns a non-0
value. More detailed diagnostic information will be avail-
able through dlerror.
NOTES
A successful invocation of dlclose does not guarantee that
the objects associated with handle will actually be removed
from the address space of the process. Objects loaded by
one invocation of dlopen may also be loaded by another invo-
cation of dlopen. The same object may also be opened multi-
ple times. An object will not be removed from the address
space until all references to that object through an expli-
cit dlopen invocation have been closed and all other objects
implicitly referencing that object have also been closed.
Once an object has been closed by dlclose, referencing sym-
bols contained in that object can cause undefined behavior.
Last change: C Programming Language Utilities 1