Deferred updates/slow redraw on OS X
David T. Lewis
lewis at mail.msen.com
Tue Jan 17 12:22:41 UTC 2006
Also note recent changes to Debugger>>openOn:context:label:contents:fullView:
since August 2005. One attempt to fix this also broke MVC, see
Mantis #2359 "Debugger in MVC opens in next available Morphic world".
Dave
On Tue, Jan 17, 2006 at 01:32:06AM -0800, Andreas Raab wrote:
> > Does this ring any bells for anyone?
>
> There is a possibility that this is caused by a debugger popping up via
> a non-ui process. When this happens (which just so happened quite a
> number of times to me) you see all sorts of weirdo effects - starting
> from the debug button being in the wrong place, over redrawing stuff
> extremely slowly, up to bogus recursive errors. The cause? Interference
> of the debug process with the main Morphic UI process. The code in
> Debugger>>openOn:context:label:contents:fullView: is questionable - it
> forks off the debugger in a separate process but that process is not
> synchronized with Morphic. What that code probably *should* say is
> "WorldState addDeferredUIMessage:[...]" or somesuch. You might want to
> try this and see if it addresses your problem. I wouldn't be surprised
> if it did.
>
> Avi Bryant wrote:
> > I've complained occasionally about the state my images can get into
> > where there are frequent excruciating waits while each SystemWindow
> > redraws itself many times slower than normal - these are often
> > triggered by debuggers popping up but I also have images where just
> > opening a new browser window can sometimes set it off. (See http://
> > macos.tuwien.ac.at:9009/482103917.asHtml for one discussion about the
> > problem). I can now characterize it a little better, I think: what's
> > happening is that the deferred updates flag is getting set to false,
> > and yet the WorldState still has a canvas directly on the Display
> > form. If I disable deferred updating, and nil out the canvas on
> > WorldState, then I'm pretty sure the problem goes away (and I don't
> > notice any particular change in UI responsiveness, though I realize
> > there must be some extra copying going on).
> >
> > Does this ring any bells for anyone?
> >
More information about the Squeak-dev
mailing list
|