Originally Posted By: ryck
I asked the technician what he thought may have caused the problem and he suggested it could have been not clearing previously used apps (seen by double-clicking on the Home button). He felt that a buildup of of still-running apps might have been more than the machine could handle.

That explanation seemed reasonable given grandchildren were visiting and using the iPad, so there would have been a significant buildup.


That explanation makes absolutely no sense. The list of applications that you see when you double-click the home button should be thought of as the "Recent Applications" menu.

iOS devices have very limited RAM. The system is very good about freeing up memory when it's needed. (It's also very good about not freeing up the memory until it's needed.)

When you switch to a different application under iOS, the application you switch from is told it is no longer frontmost and must save to disk (which of course is actually flash memory) whatever information it will need to continue where it was, because whatever information it has in RAM can be yanked away from it without further notice.

Just because an application is on that list does not mean it's running, nor that it has anything in RAM. Except in rare cases, nothing on the list is running.

Prior to iOS 7, an app that wanted to do something in the background would have to specify, as part of its submission to the App Store, exactly what it wanted to do. Only a few things were permitted: A phone app can continue being a phone in the background (unless the front app wants to be a phone), or it can stream audio (unless the front app wants to produce audio), or it can record (but not process) GPS data. There may be something else on that list, but it's a short list, and Apple will verify that it's something in line with what your app purports to do. If the app does anything at all in the background, it's doing something that you know it's doing. (In particular, unless it's a VOIP app or a streaming audio app, it cannot maintain an Interned connection while in the background.)

iOS 7 is more lenient about what functionality apps are allowed to provide in the background, but the fundamental rule is the same: if you're in the background and the frontmost application needs your RAM, it gets it. If you need to be killed to get that RAM, then so long, it was good to know you. You may or may not be warned. Plan ahead.

If you dismiss an application from that list of Recent Apps, anything it had in RAM will be released immediately whether the system needs it or not. If it's doing something in the background, it will perforce stop doing that. When it becomes the frontmost application again, it will be told it's starting from scratch and has nothing left in RAM from its previous execution. Some buggy applications benefit from that, because they make wrong assumptions about what does and does not need to be reinitialized when they aren't forced to reinitialize everything, so killing a recalcitrant app to make it load again correctly may be beneficial for that one app.

But only as a workaround for specific buggy apps. In the general case, there's no reason to think that killing the whole list periodically has any sort of maintenance benefit.