Fast app switching

Discussion in 'iPhone' started by jshelton, Jun 30, 2010.

  1. jshelton macrumors 6502a

    Aug 4, 2008
    When you double click the Home button and it brings up recently used apps, are those apps actually using memory (running in the background)? Does it help to keep those apps closed out?
  2. baller1308 macrumors 65816

    Dec 8, 2009
    there are a few apps that continue to run in the background, ie Pandora. But most of the apps are backgrounded and not running. They are more in a paused state and you should be fine on memory.
  3. jtara macrumors 65816

    Mar 23, 2009
    They are. And they aren't.

    The app remains in memory until the memory is needed. When the memory is needed by another app, some or all if the app's memory is freed.

    The OS can subsequently re-load the executable code from the app bundle.

    It's my understanding that iOS 4 will actually page the app's working memory (that not used for executable code) to flash. But, unlike OSX, it will not page it when the program is operating. Only when it is suspended, and then only when needed. It can then be paged back in when the app is re-activated.

    "Free memory" apps are going to report some scary numbers that will panic people.

    iOS keeps apps in memory as long as it can in order to minimize overhead when the app is restored. No sense in having the memory sitting there empty.

    Simply re-building an app with a Base SDK of 4.0 will Fast App Switching for the app. This is going to cause some unintended consequences that are going to show up as bugs in some apps. For example, for some apps, it may NOT be appropriate for them to "continue where they left off" when they are restored. These apps may behave in unexpected ways until the author alters the behavior of the app under 4.0. Apps that use timers may have results they were not expecting. I'm sure there are numerous other "gotchas". The most common I've seen is inadvertently leaving iPad "orphaned", where the App Store actually updates an app on iPad to a newer, 4.0-only version - but then that version won't actually run on the device. This is an error on the part of the developer that is not being caught at present by the App Store testing process.

    (This is less severe for older iPhones, because in that case the App Store won't update the app. But, in either case, the author had *probably* meant to support the older devices as well. At least the app won't be updated to one that won't run! Instead, the app just won't be updated.)

Share This Page