1 |
578 |
markom |
'\"
|
2 |
|
|
'\" Copyright (c) 1993 The Regents of the University of California.
|
3 |
|
|
'\" Copyright (c) 1994-1996 Sun Microsystems, Inc.
|
4 |
|
|
'\"
|
5 |
|
|
'\" See the file "license.terms" for information on usage and redistribution
|
6 |
|
|
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
7 |
|
|
'\"
|
8 |
|
|
'\" RCS: @(#) $Id: CallDel.3,v 1.1.1.1 2002-01-16 10:25:23 markom Exp $
|
9 |
|
|
'\"
|
10 |
|
|
.so man.macros
|
11 |
|
|
.TH Tcl_CallWhenDeleted 3 7.0 Tcl "Tcl Library Procedures"
|
12 |
|
|
.BS
|
13 |
|
|
.SH NAME
|
14 |
|
|
Tcl_CallWhenDeleted, Tcl_DontCallWhenDeleted \- Arrange for callback when interpreter is deleted
|
15 |
|
|
.SH SYNOPSIS
|
16 |
|
|
.nf
|
17 |
|
|
\fB#include \fR
|
18 |
|
|
.sp
|
19 |
|
|
\fBTcl_CallWhenDeleted\fR(\fIinterp\fR, \fIproc\fR, \fIclientData\fR)
|
20 |
|
|
.sp
|
21 |
|
|
\fBTcl_DontCallWhenDeleted\fR(\fIinterp\fR, \fIproc\fR, \fIclientData\fR)
|
22 |
|
|
.SH ARGUMENTS
|
23 |
|
|
.AS Tcl_InterpDeleteProc clientData
|
24 |
|
|
.AP Tcl_Interp *interp in
|
25 |
|
|
Interpreter with which to associated callback.
|
26 |
|
|
.AP Tcl_InterpDeleteProc *proc in
|
27 |
|
|
Procedure to call when \fIinterp\fR is deleted.
|
28 |
|
|
.AP ClientData clientData in
|
29 |
|
|
Arbitrary one-word value to pass to \fIproc\fR.
|
30 |
|
|
.BE
|
31 |
|
|
|
32 |
|
|
.SH DESCRIPTION
|
33 |
|
|
.PP
|
34 |
|
|
\fBTcl_CallWhenDeleted\fR arranges for \fIproc\fR to be called by
|
35 |
|
|
\fBTcl_DeleteInterp\fR if/when \fIinterp\fR is deleted at some future
|
36 |
|
|
time. \fIProc\fR will be invoked just before the interpreter
|
37 |
|
|
is deleted, but the interpreter will still be valid at the
|
38 |
|
|
time of the call.
|
39 |
|
|
\fIProc\fR should have arguments and result that match the
|
40 |
|
|
type \fBTcl_InterpDeleteProc\fR:
|
41 |
|
|
.CS
|
42 |
|
|
typedef void Tcl_InterpDeleteProc(
|
43 |
|
|
ClientData \fIclientData\fR,
|
44 |
|
|
Tcl_Interp *\fIinterp\fR);
|
45 |
|
|
.CE
|
46 |
|
|
The \fIclientData\fR and \fIinterp\fR parameters are
|
47 |
|
|
copies of the \fIclientData\fR and \fIinterp\fR arguments given
|
48 |
|
|
to \fBTcl_CallWhenDeleted\fR.
|
49 |
|
|
Typically, \fIclientData\fR points to an application-specific
|
50 |
|
|
data structure that \fIproc\fR uses to perform cleanup when an
|
51 |
|
|
interpreter is about to go away.
|
52 |
|
|
\fIProc\fR does not return a value.
|
53 |
|
|
.PP
|
54 |
|
|
\fBTcl_DontCallWhenDeleted\fR cancels a previous call to
|
55 |
|
|
\fBTcl_CallWhenDeleted\fR with the same arguments, so that
|
56 |
|
|
\fIproc\fR won't be called after all when \fIinterp\fR is
|
57 |
|
|
deleted.
|
58 |
|
|
If there is no deletion callback that matches \fIinterp\fR,
|
59 |
|
|
\fIproc\fR, and \fIclientData\fR then the call to
|
60 |
|
|
\fBTcl_DontCallWhenDeleted\fR has no effect.
|
61 |
|
|
|
62 |
|
|
.SH KEYWORDS
|
63 |
|
|
callback, delete, interpreter
|