Losing track of time

rcozens at pon.net rcozens at pon.net
Sat Aug 9 09:52:01 EDT 2003


>if I set the timer to chime every hour,
>I am losing about 5 seconds each time I cycle through.

Hi Howard,

I'm not an expert in this area; but in my humble opinion you're doing 
as well as you ever will running in a multi-user operating system 
(5/3600 = a 0.14 % error).

Lacking a single-user, real-time OS, there are too many things beyond 
the control of your app or stack to expect timing to the millisecond.

And suppose a handler is running at the exact moment the message is 
sent....the message's handler cannot run until the current handler 
and any handlers the current handler calls have completed, and any 
handlers they call have been completed, and so on.

I have run tests in HyperCard (& Run Rev?) timing the execution of 
repeat loops.  What I found generally was that repeat loops would log 
essentially equal execution times through many iterations and the the 
next loop would take at least an order of magnitude longer, then many 
average-time loops followed by another "performance hit", and so on. 
I concluded that the performance hits were the result of O/S 
"housekeeping" activities that had nothing to do with my app or Rev.

I've said it before, & I'll say it again: IMFO, precise timing is 
impossible on any multi-user O/S.
-- 
Rob Cozens, CCW
Serendipity Software Company

"And I, which was two fooles do so grow three.
  Who are a little wise, the best fooles bee."

 From "The Triple Foole"
by John Donne 1573-1631



More information about the use-livecode mailing list