67 lines
2.3 KiB
Groff
67 lines
2.3 KiB
Groff
|
'\"
|
||
|
'\" Copyright (c) 1995-1996 Sun Microsystems, Inc.
|
||
|
'\"
|
||
|
'\" See the file "license.terms" for information on usage and redistribution
|
||
|
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||
|
'\"
|
||
|
'\" SCCS: @(#) Exit.3 1.4 96/03/25 20:02:50
|
||
|
'\"
|
||
|
.so man.macros
|
||
|
.TH Tcl_Exit 3 7.5 Tcl "Tcl Library Procedures"
|
||
|
.BS
|
||
|
.SH NAME
|
||
|
Tcl_Exit, Tcl_CreateExitHandler, Tcl_DeleteExitHandler \- end the application (and invoke exit handlers)
|
||
|
.SH SYNOPSIS
|
||
|
.nf
|
||
|
\fB#include <tcl.h>\fR
|
||
|
.sp
|
||
|
\fBTcl_Exit\fR(\fIstatus\fR)
|
||
|
.sp
|
||
|
\fBTcl_CreateExitHandler\fR(\fIproc, clientData\fR)
|
||
|
.sp
|
||
|
\fBTcl_DeleteExitHandler\fR(\fIproc, clientData\fR)
|
||
|
.SH ARGUMENTS
|
||
|
.AS Tcl_ExitProc clientData
|
||
|
.AP int status in
|
||
|
Provides information about why application exited. Exact meaning may
|
||
|
be platform-specific. 0 usually means a normal exit, 1 means that an
|
||
|
error occurred.
|
||
|
.AP Tcl_ExitProc *proc in
|
||
|
Procedure to invoke before exiting application.
|
||
|
.AP ClientData clientData in
|
||
|
Arbitrary one-word value to pass to \fIproc\fR.
|
||
|
.BE
|
||
|
|
||
|
.SH DESCRIPTION
|
||
|
.PP
|
||
|
\fBTcl_Exit\fR is the procedure that is invoked to end a Tcl application.
|
||
|
It is invoked by the \fBexit\fR command, as well as anyplace else that
|
||
|
terminates the application.
|
||
|
No-one should ever invoke the \fBexit\fR procedure directly; always
|
||
|
invoke \fBTcl_Exit\fR instead, so that it can invoke exit handlers.
|
||
|
.PP
|
||
|
\fBTcl_CreateExitHandler\fR arranges for \fIproc\fR to be invoked
|
||
|
by \fBTcl_Exit\fR before it terminates the application.
|
||
|
This provides a hook for cleanup operations such as flushing buffers
|
||
|
and freeing global memory.
|
||
|
\fIProc\fR should have arguments and return value that match
|
||
|
the type \fBTcl_ExitProc\fR:
|
||
|
.CS
|
||
|
typedef void Tcl_ExitProc(ClientData \fIclientData\fR);
|
||
|
.CE
|
||
|
The \fIclientData\fR parameter to \fIproc\fR is a
|
||
|
copy of the \fIclientData\fR argument given to
|
||
|
\fBTcl_CreateExitHandler\fR when the callback
|
||
|
was created. Typically, \fIclientData\fR points to a data
|
||
|
structure containing application-specific information about
|
||
|
what to do in \fIproc\fR.
|
||
|
.PP
|
||
|
\fBTcl_DeleteExitHandler\fR may be called to delete a
|
||
|
previously-created exit handler. It removes the handler
|
||
|
indicated by \fIproc\fR and \fIclientData\fR so that no call
|
||
|
to \fIproc\fR will be made. If no such handler exists then
|
||
|
\fBTcl_DeleteExitHandler\fR does nothing.
|
||
|
|
||
|
.SH KEYWORDS
|
||
|
callback, end application, exit
|