This is a really great question. Reducing the priority on a thread may not do, at all, what you expect. I don't know exactly what it does, myself, but my interest has been peaked, recently, to the point where I'm about to dig in and find out. The answer is going to be in the Linux scheduler.
I can imagine, for instance, that your CPU intensive process is scheduled infrequently, but that, when it gets control, it makes your device completely unresponsive until it is pre-empted. That behavior would change, depending on the number of cores on your device. Reading your statement of the question, I think you have a pretty good understanding of what has to be done to solve the problem. Somehow you have to smear a given number of CPU cycles over a greater time by dividing the problem into smaller pieces and scheduling them appropriately. Presuming it was possible, I think that a generic way of doing this would be a fantastic addition to the Android platform. G. Blake Meike Marakana The second edition of Programming Android is now on-line: http://shop.oreilly.com/product/0636920023005.do -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en