If you are having problems with your HTC Hero lagging, you probably already tried fitting a Class 6 SDHC memory card into the device.. If not you must do this! It really does make a big difference to the overall performance of the device.
After installing a few apps etc you may still be getting some problems, and I've noticed that different people are getting different behaviour which doesn't really make sense if we were to blame the HTC processing power, or the HTC software optimisation.
Today I was playing with a friends HTC Hero after he said it was lagging and although he has now the same SD card as I do, and after his first factory reset the phone was flying along, his Hero is experiencing much more lag than mine. Mine currently (touching wood) is flying along, and is as slick as ever, but it wasn't after some time of use, but it is now, and it might be down to an experiment that I'm trying.
This time I'm not going to change any of the hardware, or put the devices through resets, but I am going to change the way I use the HTC Hero.
In previous posts I've talked about using apps like TasKill and TaskPanel to close down processes that don't need to be running any more. The theory is that closing as many of these as possible will free up memory and processing time, and thus reduce lag like any conventional computing device.. But I've found that Android doesn't work like this. It has its own process and memory management that makes this original concept of "resident" processes obsolete, and thus TasKill and TaskPanel apps are really only good for closing hanging applications, which I have to say I've not had yet. So the first part of my experiment to NOT close processes.
The second part of the experiment is the way I believe the stand-by part of the Android platform works.. or perhaps how HTC Hero (Sense) behaves whilst in stand-by. I believe (happy to be corrected with proof) that some applications don't do the same processing as they would when the device is on, thus when you wake the HTC Hero it is doing various "catch up" tasks. One hunch that I have is that if you force the device into stand-by by tapping the "hang-up/power" button, that these processes are forced into their "sleep mode". This is all well and good, but if you constantly wake and sleep the device, these processes aren't getting a chance to finish what they started to do, and possibly due to poor threading management of these applications, some of the threads are hanging up causing the phone to slowly ground to a halt the more times the device is on and off stand-by. This is entire speculation, and is just based against my development knowledge and the general behaviour of the device.. essentially a professional hunch. I could be completely wrong, but this is why I'm experimenting with this idea by NOT putting the phone into stand-by almost as soon as I've only just woken it up.
I want to ask others to try this out, as over the last week I've been trying this, it seems to be working, and I've not had to close any processes or restart the phone! But I don't want this to be utter coincidence, and the other way to tell is for others to try this out as well.
Post a comment if you are going to try it out, and let me know over a week or two of use, if you have noticed any reduction in extended lag.