Deferred updates/slow redraw on OS X
karl
karl.ramberg at chello.se
Tue Jan 17 13:52:12 UTC 2006
Andreas Raab skrev:
> > 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.
>
> Cheers,
> - Andreas
This is fixed in 3.9alpha. A similar fix should probably go into 3.8.
Karl
>
> 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?
>>
>> Avi
>>
>>
>
>
>
>
More information about the Squeak-dev
mailing list
|