[ Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]
NAME
uevent::onidle - Request merging and deferal to idle time
Table Of Contents
SYNOPSIS
package require Tcl 8.5 9
package require uevent::onidle ?0.2?
package require logger
::uevent::onidle objectName commandprefix
objectName request
DESCRIPTION
This package provides objects which can merge multiple requestes for an action and execute the action the moment the system (event loop) becomes idle. The action to be run is configured during object construction.
API
The package exports a class, uevent::onidle, as specified below.
::uevent::onidle objectName commandprefix
The command creates a new onidle object with an associated global Tcl command whose name is objectName. This command may be used to invoke various operations on the object.
The commandprefix is the action to perform when the event loop is idle and the user asked for it using the method request (See below).
The object commands created by the class commands above have the form:
-
This method requests the execution of the command prefix specified during the construction of objectName the next time the event loop is idle. Multiple requests are merged and cause only one execution of the command prefix.
Examples
Examples of this type of deferal are buried in the (C-level) implementations all the Tk widgets, defering geometry calculations and window redraw activity in this manner.
Bugs, Ideas, Feedback
If you find errors in this document or bugs or problems with the package it describes, or if you want to suggest improvements for the documentation or the package, please use the Tcllib Trackers and specify uevent as the category.
When proposing code changes, please provide unified diffs, i.e the output of diff -u.
Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.
KEYWORDS
callback, deferal, event, idle, merge, on-idle
COPYRIGHT
Copyright © 2008 Andreas Kupries
