Tcl_CreateTimerHandler, Tcl_DeleteTimerHandler - call a procedure at a given
time
#include <tcl.h>
Tcl_TimerToken
Tcl_CreateTimerHandler(milliseconds, proc, clientData)
Tcl_DeleteTimerHandler(token)
- int milliseconds (in)
- How many milliseconds to wait before invoking proc.
- Tcl_TimerProc *proc (in)
- Procedure to invoke after milliseconds have elapsed.
- ClientData clientData (in)
- Arbitrary one-word value to pass to proc.
- Tcl_TimerToken token (in)
- Token for previously created timer handler (the return value from some
previous call to Tcl_CreateTimerHandler).
Tcl_CreateTimerHandler arranges for proc to be invoked at a time
milliseconds milliseconds in the future. The callback to proc
will be made by Tcl_DoOneEvent, so Tcl_CreateTimerHandler is
only useful in programs that dispatch events through Tcl_DoOneEvent or
through Tcl commands such as vwait. The call to proc may not be
made at the exact time given by milliseconds: it will be made at the
next opportunity after that time. For example, if Tcl_DoOneEvent is not
called until long after the time has elapsed, or if there are other pending
events to process before the call to proc, then the call to proc
will be delayed.
Proc should have arguments and return value that match the
type Tcl_TimerProc:
typedef void Tcl_TimerProc(ClientData clientData);
The clientData parameter to proc is a copy of the
clientData argument given to Tcl_CreateTimerHandler when the
callback was created. Typically, clientData points to a data structure
containing application-specific information about what to do in proc.
Tcl_DeleteTimerHandler may be called to delete a previously
created timer handler. It deletes the handler indicated by token so
that no call to proc will be made; if that handler no longer exists
(e.g. because the time period has already elapsed and proc has been
invoked then Tcl_DeleteTimerHandler does nothing. The tokens returned
by Tcl_CreateTimerHandler never have a value of NULL, so if NULL is
passed to Tcl_DeleteTimerHandler then the procedure does nothing.
callback, clock, handler, timer