After following the POSE 3.4 thread, I got the new version of the emulator and took advantage of the memory leak detector, which is very cool. It brought my attention to one thing in particular:
My app basically instantiates a dynamic form (or a bunch of them), draws it, adds a bunch of stuff to it, and then "clears the screen" by deleting the form, making a new one, and drawing that new one. I specifically avoid calling FrmEraseForm, because it is perceptibly slower on the screen refresh than just calling FrmDeleteFrom followed by FrmNewForm/FrmDrawForm (it does a vertical wipe of the screen instead of just blitting a white rectangle over it, or something). I had no idea this was causing any problems, because FrmDeleteForm documentation says that it erases all the objects in the form and the form itself. Of course, FrmDeleteForm does not free the onscreen buffer that holds the form's bits, and POSE just told me about this for the first time. I cannot afford to call FrmEraseForm, it's too slow, but I do want to free the bits --- considering that this is an internal window structure thing, do I have any other alternatives? All I want to avoid is the vertical wipe...it's tolerable on the m505, but is noticeably slower on all the other devices I have. Thanks for any ideas you may have! -d -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/tech/support/forums/
