Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Tcl_CallWhenDeleted(3)	    Tcl	Library	Procedures	Tcl_CallWhenDeleted(3)

______________________________________________________________________________

NAME
       Tcl_CallWhenDeleted,  Tcl_DontCallWhenDeleted  -	 Arrange  for callback
       when interpreter	is deleted

SYNOPSIS
       #include	<tcl.h>

       Tcl_CallWhenDeleted(interp, proc, clientData)

       Tcl_DontCallWhenDeleted(interp, proc, clientData)

ARGUMENTS
       Tcl_Interp *interp (in)			     Interpreter with which to
						     associated	callback.

       Tcl_InterpDeleteProc *proc (in)		     Procedure	to  call  when
						     interp is deleted.

       ClientData clientData (in)		     Arbitrary	one-word value
						     to	pass to	proc.
______________________________________________________________________________

DESCRIPTION
       Tcl_CallWhenDeleted arranges for	proc to	be called by  Tcl_DeleteInterp
       if/when	interp	is  deleted at some future time.  Proc will be invoked
       just before the interpreter is deleted, but the interpreter will	 still
       be  valid  at the time of the call.  Proc should	have arguments and re-
       sult that match the type	Tcl_InterpDeleteProc:

	      typedef void Tcl_InterpDeleteProc(
		      ClientData clientData,
		      Tcl_Interp *interp);

       The clientData and interp parameters are	copies of the  clientData  and
       interp  arguments  given	to Tcl_CallWhenDeleted.	 Typically, clientData
       points to an application-specific data structure	that proc uses to per-
       form cleanup when an interpreter	is about to go away.   Proc  does  not
       return a	value.

       Tcl_DontCallWhenDeleted	cancels	a previous call	to Tcl_CallWhenDeleted
       with the	same arguments,	so that	proc will not be called	after all when
       interp is deleted.  If there is no deletion callback that  matches  in-
       terp, proc, and clientData then the call	to Tcl_DontCallWhenDeleted has
       no effect.

       Note  that if the callback is being used	to delete a resource that must
       be released on exit, Tcl_CreateExitHandler should  be  used  to	ensure
       that  a callback	is received even if the	application terminates without
       deleting	the interpreter.

SEE ALSO
       Tcl_CreateExitHandler(3), Tcl_CreateThreadExitHandler(3)

KEYWORDS
       callback, cleanup, delete, interpreter

Tcl				      7.0		Tcl_CallWhenDeleted(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=Tcl_CallWhenDeleted.tcl86&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help