This really boils down to how the user will use the device. I think it's great that devices have become powerful enough that running multiple CURRENT apps is possible, but developers often max out a devices capability.
I prefer saved-state (with support of background threads) for the following reason:
A program will have nearly ALL resources available to it while it runs.
Until we develop a device that allows us to SEE multiple applications at once, there is little need to be running multiple entire programs at once. Even if you throttle down the CPU usage of a background app, it is still using a chunk of the heap RAM. I suppose you could try to move that RAM to a swap-space, but that means there will be a noticeable delay every time you switch.
However, as I said before, developers LOVE multi-tasking. It puts all the strain on the user instead. Now I have to deal with selecting what apps are active based on their use, CPU use, and memory use. How easy is the app to restart and get where I left off versus just letting it run in the background and suck down resources?
Developers do NOT like having to deal with multi-threading and save-states. It's a royal pain. But, as a user, I sure do like a program done right.
However, this is where I turn around and state that multi-tasking will be the future-wave anyways. Why? My Palm now has an obscene number of programs on it. It is naive to think that they are all programmed to play well with each other. My screen may be small, but 320x480 IS enough to start running "widgets" in the corners. Besides, some of today's programs are so large that re-starting takes more time than it would take to move swap-space back to the heap RAM. As for RAM, I remember a day when 2MB was considered plenty for both heap, databases, and programs. Now there is 245MB or RAM. There WILL be devices with sufficient RAM to do real multi-tasking.
In other words, we are now at the beginning where only games and video require ALL resources, so task-switching will become unnecessary. I prefer Palm's method...for now. I think PocketPCs were trying to be a laptop long before they had the power to do so, and their usability has suffered because of it. But I applaud Palm's switch to Linux and multi-tasking. The hardware has finally arrived (LifeDrive and T5), but now the software needs to catch up.
(How's that for seeing both sides?)
- Jim
|