3 ms·
Here is another viewpoint of how applications run and (don't) exit: http://android-developers.blogspot.com/2010/04/multitasking-android-way.html http://android-
by gvb 16y ago
Here is another viewpoint of how applications run and (don't) exit: http://android-developers.blogspot.com/2010/04/multitasking-android-way.html http://android-developers.blogspot.com/2010/04/multitasking-...
"Once Android determines that it needs to remove a process, it does this brutally, simply force-killing it. The kernel can then immediately reclaim all resources needed by the process, without relying on that application being well written and responsive to a polite request to exit. Allowing the kernel to immediately reclaim application resources makes it a lot easier to avoid serious out of memory situations.
"If a user later returns to an application that's been killed, Android needs a way to re-launch it in the same state as it was last seen, to preserve the "all applications are running all of the time" experience. This is done by keeping track of the parts of the application the user is aware of (the Activities), and re-starting them with information about the last state they were seen in. This last state is generated each time the user leaves that part of the application, not when it is killed, so that the kernel can later freely kill it without depending on the application to respond correctly at that point."
It sounds like Android has addressed the locked resource issue. I'm not familiar with WinMo, but I suspect it tries to be cooperative and uncooperative (ornery or crashed) processes will cause the reclamation to fail.
- JoeAltmaier 16y agoCool - they addresses it. But how does Android know when one app needs to be killed? Does any attempt to open an in-use resource kill the owning task?