Berserk idleLoop in event handling?

Andreas Raab andreas.raab at gmx.de
Wed Jan 7 09:59:21 UTC 2004


Hi Tim,

> So, I had a timestamped log of when events came in, when a screen
> update happened and when the idleloop prim runs. Imagine my shock to
> see the latter running nearly all the time - even between a key press
> and the screen update to display the char! I'm not about to delve into
> the event handling loop without a native guide (you think I'm _crazy_?)
> so I'm wondering if anyone has been playing in that particular poo-pit
> recently and noticed anything likely to let the idleloop go loopy?

Not likely. IdleLoop is run when there is no system activity (e.g., no
processes running) and given that the main morphic loop looks like
- handle event(s)
- redisplay
- wait
There shouldn't be an idleLoop inbetween the key press and the display
update. Unless there's some blocking wait in keyboard processing somewhere
down the line I would suspect that this problem is caused by some error in
the logging process.

BTW, one possibility to test this would be to set up a very low-level
priority background process ("just" above the real background process) and
have it complain when its being run while Morphic processes events.

Cheers,
  - Andreas




More information about the Squeak-dev mailing list