NAME
dlclose — close a shared library
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(3C))
are also closed.
handle
is the value returned by a previous invocation of
dlopen.
MULTITHREAD USAGE
This routine is thread-safe.
RETURN VALUE
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 is available through
dlerror.
WARNINGS
A successful invocation of
dlclose
does not guarantee that
the objects associated with
handle
have actually been removed
from the address space of the process. Objects loaded by
one invocation of
dlopen
may also be loaded by another
invocation of
dlopen.
The same object may also be opened multiple
times. An object is not removed from the address
space until all references to that object through an explicit
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 symbols
contained in that object can cause undefined behavior.
SEE ALSO
dlerror(3C),
dlopen(3C),
dlsym(3C).
Texts and Tutorials:
- HP-UX Linker and Libraries Online User Guide
(See the
+help
option)
- HP-UX Linker and Libraries User's Guide
(See
manuals(5)
for ordering information)