At 1:54 PM -0500 2/19/02, Lee Fyock wrote: >POSEr chews serious amounts of CPU (65% or more) under Mac OS X, even when >it's in the background. This very much slows down other processes. > >A possible feature enhancement (please?) would be something like Virtual >PC's preference of "pause in the background" which would eat next to no CPU >time when you're not actually using POSEr.
Poser *does* slow down in the background. That is, using the old Classic model, it specifies a non-zero sleep time when calling WaitNextEvent. The big problem is in a function called Platform::Delay. This function is used to make sure that the emulated device wakes up every 10 msecs in order to update things like the tick counter. On the Mac, Platform::Delay is just a spin-wait function, and doesn't let any other process continue. Stubbing that function out should help speed other other processes on all Macs. However, it would have to be replaced with some other mechanism to make sure that the emulated device is brought out of idle mode every 10 msecs. So, as David encouraged, if you'd like to work on fixing this, that's where you'd look. Or you could take the route that I'm sure Scott Gruby would recommend, which is to make Poser a full native application on Mac OS X, and make use of multi-threading and synchronization mechanisms that aren't available to Mac Classic applications. >The behavior when running Gremlins is left as an exercise to Keith. :-) Ugh. >Also, does anyone else have the problem where POSEr seems to go to sleep >(and won't wake up) when in the background for a while? At least once a day >I'll run POSEr, do some stuff, then try to bring it back to the foreground, >and get the spinny CD of unhappiness until I decide to force-quit it. This >is under 10.1.2. I haven't seen this, but I think that Scott Gruby has reported something similar. -- -- Keith Rollin -- Palm OS Emulator engineer -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/tech/support/forums/
