An explanation of how multitasking works on iOS [video]
One of the questions asked most often when it comes to multitasking on the iPhone/iPad is “Do I need to manually kill apps in the background to improve performance?”. And you’ve surely heard people telling you: yes you do, and no you don’t need to. So which is it? Well, developer Frasier Spiers aims to put this to rest as he explains on his blog why killing apps in the multitasking bar isn’t necessary.
Let me be as clear as I can be: the iOS multitasking bar does not contain “a list of all running apps”. It contains “a list of recently used apps”. The user never has to manage background tasks on iOS.
Except in a few cases, which I’ll explain, the apps that appear in the multitasking bar are not currently running. When you press the home button, iOS will tell the app to quit. In almost all cases, it quits, it stops using CPU time (and hence battery) and the memory it was using is eventually recovered if required.
In his blog post titled Misconceptions About iOS Multitasking, Frasier summarizes:
- If someone tells you that all the apps in the multitasking bar are running, using up memory or sucking power, they are wrong.
- When you hit the home button, an app moves from Active to Background and quickly to the Suspended state where it no longer uses CPU time or drains power.
- An app may request an additional 10 minutes of Background running to complete a big task before becoming Suspended.
- If memory is becoming scarce, iOS will automatically move Suspended apps into the Not Running state and reclaim their memory.
- Five classes of apps – audio, GPS, VOIP, Newsstand and accessory apps – and some built-in apps such as Mail may run indefinitely in the background until they complete their task.
He’s also posted a followup video explaining how multitasking on iOS works in real time. The video (below) is broken down into five sections demonstrating:
- An app going from active to background to suspended
- Instacast HD requesting extra background time to finish a podcast download
- TomTom running indefinitely in the background
- Batman Arkham City Lockdown and Real Racing 2 HD competing for big chunks of device memory
- Batman Arkham City Lockdown forcing several smaller apps out of memory
Essentially, the 16 minute video boils down to this: you can manually kill apps in the multitasking tray (hold down an app for several seconds until it wiggles, then tap the “-” icon) to troubleshoot suspected problems, but iOS is clever enough to manage the entire process for you. Personally though, I’ve made it a habit of closing off processes (apps) via SBSettings I’m no longer using to free up precious memory on my iPhone. This is especially true when I’m down to about 50-80MB of RAM and Safari starts to become frustratingly slow and sluggish. Ultimately, the choice is yours, though at least now you know that leaving apps in the multitasking bar won’t use up more memory or zap your battery.[via TNW]