Posted to tcl by kbk at Wed Mar 25 16:49:51 GMT 2015view raw
- proc eventArrives {stuff} {
- variable queue
- lappend queue $stuff
- windClock
- }
- proc windClock {} {
- variable queueTimer
- if {![info exists queueTimer]} {
- set queueTimer [after 10 serviceQueue]
- }
- }
- proc serviceQueue {} {
- variable queue
- variable queueTimer
- unset queueTimer
- set queue [lassign $queue headEvent]
- if {[llength $queue] > 0} windClock
- serviceEvent $headEvent
- }