Рано или поздно все айманьяки задаются вопросом о том, как часто нужно выгружать вручную приложения  из панели многозадачности.

Короткий ответ будет очень простым, и для многих, наверное, даже немножко шокирующим - не нужно! Никогда!

А теперь, для оставшихся скептиков и поклонников Фомы неверующего, разберемся, как же на самом деле работает многозадачность в iOS. Сам термин "многозадачность" в наши дни уже давно является более маркетинговым, чем чисто техническим. Не воспринимайте ваш iДевайс, как компьютер с Windows или Mac OS X на борту, просто потому, что iOS работает совсем по другому. В отличии от Windows Mobile и даже Android, iOS в большинстве случаев не оставляет работающих процессов в фоне, которые нужно выгружать вручную.

Для начала давайте перечислим состояния, в которых может пребывать приложение в iOS:

  • Не запущено (not running) - приложение было закрыто или не запущено
  • Неактивно (inactive) - приложение запущено, но не получает событий (например пользователь заблокировал девайс при запущенном приложении)
  • Активно (active) - нормальный режим работы запущенного приложения
  • Фоновое (background) - приложение больше не отображается, но код еще исполняется
  • Приостановлено (suspended) - приложение находится в памяти но код не исполняется

1. Активное и неактивное состояние нас не особо интересует.

Большинство заблуждений связано с переходом приложения из активного в фоновое, приостановленное или неактивное состояния.

2. Когда вы нажимаете кнопку "Home", приложение переходит из активного состояния в фоновое, а через несколько секунд - в приостановленное.

Первое техническое замечание - информация о состоянии приложения в приостановленном состоянии остается в памяти устройства. Это сделано для того, чтобы вы могли быстрее вернутся к нему. Это не является нагрузкой для процессора и не истощает аккумулятор.

3. Вы можете возразить, что приложение, находящееся в памяти, требует ручной выгрузки.

Нет, так как ваша операционная система делает это за вас. Если приложения находятся в приостановленном состоянии длительное время, или вы запускаете, например, игру, требующую больших ресурсов памяти, iOS начинает очищать приостановленные приложения и переводит их в состояние "не запущенные". Таким образом память очищается полностью.

4. Самое главное заблуждение: все иконки, находящиеся в панели многозадачности, кушают память.

На самом деле тут всегда отображается только список недавно использованных приложений, в независимости от их текущего состояния. Вы также могли заметить, что активное приложение не отображается в панели многозадачности.

5. Об этом вы вряд ли слышали, но будет полезно знать.

Все приложения работают в фоне 5 секунд. Некоторым из них необходимо на 10 минут дольше и iOS разрешает это.

6. Однако существует пять групп приложений, которым позволяется постоянная работа в фоне.

  • Приложения для проигрывания аудио в фоне, например Instacast для подкастов.
  • Навигационные приложения, которые отслеживают в фоне ваше месторасположение, например iGo или TomTom.
  • Приложения, отслеживающие активные звонки VOIP. Например, вы можете получать звонки в Skype, когда он работает в фоне.
  • Приложения для чтения новостей, например "Киоск", загружающие новые выпуски.
  • Приложения, получающие в фоне постоянные обновления от внешних аксессуаров.

К этой категории также относится встроенное приложение Mail.

Все, перечисленные выше приложения, переводятся в состояние "приостановлено", как только исполняют свою задачу. Например, когда Instacast перестает проигрывать подкаст, он переходит в приостановленное состояние.

Давайте теперь сделаем короткое резюме:

  1. Если вас убеждают, что приложения, находящиеся в панели многозадачности, запущены, используют память или истощают аккумулятор - они заблуждаются.
  2. При нажатии кнопки "Home", приложения переводятся в состояние "в фоне", а через несколько секунд - в "приостановлено".
  3. Приложению перед переходом в приостановленное состояние могут потребоваться дополнительные 10 минут работы в фоне для завершения объемной задачи,
  4. iOS автоматически очищает приостановленные приложения, переводя их в неактивное состояние.
  5. Пять групп приложений  - аудио, GPS, VOIP, Киоск и аксессуары, а также встроенное приложение Mail работают в фоне до завершения своей задачи.

Или если совсем коротко: вам не надо управлять приложениями в фоне. Система прекрасно справляется с этим сама.

Будем очень рады, если эта статья помогла вам освободить немного свободного времени и благодарны, если вы поделитесь информацией с друзьями.

Подписывайтесь на нас в твиттереВКонтактеFaceBook и на RSS ленту новостей - впереди еще много интересного и полезного.

Юрій Кульчак

Работаю IT менеджером, или сисадмином по-нашему :-) Окромя яблочных девайсов увлекаюсь европейским кино, фотографией и ретро-музыкой. Люблю читать фэнтези и научную фантастику, играю в футбол и настольный теннис.

Материалы

Нашел ошибку в тексте? Выдели ее и нажми Ctrl + Enter
  • ничего не надо закрывать из мультитаска.вспомните прошивки где его не было.с 4 оси просто открыли мультибар который и до этого существовал.

  • CJ

    В Cydia есть утилитка — BatteryDetective. С ее помощью можно посмотреть какое запущенное/свернутое приложение сколько потребляет

  • Serj

    А как на счет сообщений из игр типа «у вас новое задание»?
    Как они периодически активируются?

    • Xavi Oo

      local или push notification приложение при этом не участвует это все делает операционная система. И через него ты уже можешь запустить приложения или проигнорировать.

  • судя по видео, всё так и есть. но я заметил: бывает, начинает быстро уходить батарейка. лечу «выгрузкой» всего лишнего из панели многозадачности. помогает!
    хотя возможно дело в том, что у меня какое нить приложение в таких случаях висит в фоне, типа айгоу в режиме навигации. в след. раз проверю

  • Fox_Crazy

    А все же нужно выгружать… :-)
    И Вы это можете заметить: разницу времени загрузки телефона
    А вооще, можна поставить из Cydia MultiCleaner и настроить Activator на удобное Вам движение НА ЗАКРЫТИЕ ВСЕХ ПРИЛОЖЕНИЙ одним движением

  • Pingback: Разделенная клавиатура iPad на iOS 5 имеет 6 скрытых кнопок, о которых вы не знали()

  • Не соглашусь с автором
    1. через 10 минут вырубается интернет соединение, а не приложение (но тут есть некоторые методы, которыми разработчики пользуются, что бы продлить жизнь).
    2. приложения будут вас больше радовать если вы будите периодически перезапускать (количество встречаемых багов это тоже уменьшит).
    3. банально закройте приложение полностью и запустите или «воспользуйтесь многозначностью». думаю разница будет очевидной.

  • Pingback: Как работает многозадачность iOS 7()