DtSearchExit(library call) DtSearchExit(library call)
NAME
DtSearchExit -- Perform orderly shutdown of search engine
SYNOPSIS
#include <Dt/Search.h>
void DtSearchExit(
int return-code);
void DtSearchAddUserExit(
void (*user_exit)(int));
void DtSearchRemoveUserExit(
);
DESCRIPTION
DtSearchExit is an internal exit call for the online API. It may be called by any API module when a fatal error or aborting signal is
detected. It performs an orderly shutdown of the search engine including graceful database closure, communications disconnect, release of
system resources, restoration of environment, etc., as necessary. It will call a user exit function if one was installed by DtSearchAd-
dUserExit.
The final action is a call to the standard system exit function so DtSearchExit never returns. The return_code passed to DtSearchExit will
eventually be the value passed to exit.
Usage of DtSearchExit is not required to use the DtSearch API. Each API function does its own resource cleanup before returning to the
caller so process termination outside of the API need not make further reference to the API.
For the convenience of API users, DtSearchAddUserExit may be called to install an optional user_exit function which will be called from
within DtSearchExit. The user_exit argument is a pointer to a user written function that takes an integer argument and returns void. If
DtSearchExit is called, the value of return_code will be passed as the argument to the user_exit function.
Calling DtSearchAddUserExit replaces a user_exit installed by a previous call, if any. User exits are typically installed to ensure that
required application cleanup is performed if the API should happen to abort. Since DtSearchExit may be called from within a signal catching
function, user_exit should not call functions which would be unsafe for a signal catcher to call, as defined by the POSIX standard.
DtSearchRemoveUserExit may be called to remove any user_exit installed by a previous call to DtSearchAddUserExit.
RETURN VALUE
DtSearchExit and the user_exit installed by DtSearchAddUserExit do not return.
SEE ALSO
DtSrAPI(3), DtSearch(5)
DtSearchExit(library call)