Многозадачность iOS: почему выгрузка фоновых приложения негативно влияет на автономность iPhone и iPad

Со времен популяризации смартфонов перед пользователями стоит проблема низкой автономности мобильных устройств. Большие сенсорные дисплеи, мощные процессоры, энергозатратные приложения – все это в разной степени способствует быстрой разрядке аккумулятора. «Эксперты» советуют для улучшения производительности и увеличения времени автономной работы вручную закрывать эти самые приложения. В действительности, это один из мифов, который существует со времен первых версий iOS.

Многие пользователи iPhone стремятся выгружать из памяти приложения, запущенные ранее. Конечно, многозадачность работает прекрасно, но зачем занимать лишние мегабайты оперативной памяти? Тем более, ходят слухи, что несколько одновременно запущенных программ отрицательно сказываются на зарядке. В действительности, подобное оказывает на систему абсолютно противоположный эффект. Парадокс состоит в том, что выгрузка приложений из памяти только способствует ускоренной разрядке аккумулятора.

Мифы и реальность

Для начала стоит уяснить, что реализация многозадачности в iOS находится на весьма высоком уровне. Что бы ни говорили ненавистники, «операционка» прекрасно работает даже после запуска пары десятков приложений. Звучит как похвала, но программисты Apple недаром едят свой хлеб. Все разработчики подчиняются единым требованиям по созданию ПО.

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

Возможно, большинство не поверит и подумают, что это ошибка употреблять термины «фоновые приложения» и «энергоэффективность» в одном предложении. Уверяем, оговорки и прочие погрешности в терминологии исключены. Многозадачность запускается двойным нажатием на кнопку «Домой». А полное закрытие программ осуществляется смахиванием окошка вверх (справедливо для iOS 9).

Реальность же такова, что как только вы вышли из приложения, единожды «тапнув» на клавишу «Домой», его работа останавливается: приложение перестает обращаться к процессору, а память, которую оно занимало, со временем освобождается. Конечно, бывают исключения, когда система не прекращает функционирование программы в фоновом режиме. Например, отправка электронного сообщения, воспроизведение музыки или автоматическая загрузка обновлений. Тем не менее, даже подобная «расточительность» со стороны «операционки» бережлива по отношению к аккумулятору устройства.

Когда вы вручную закрываете приложение, операционная система должна выгрузить задачу из памяти, что приводит к расходованию заряда батареи. При повторной загрузке этого же приложения системе снова нужно загрузить его в ОЗУ, что также обернется энергозатратами. Таким образом, принудительно закрывая приложения вы дважды расходуете заряд аккумулятора. Находясь же в оперативной памяти устройства, оно никак не влияет на его автономность.

Как работает многозадачность в iOS

Всего у приложений в iOS есть пять типов состояний:

  • Нерабочее — работа приложения была прекращена или оно не было запущено.
  • Неактивное — приложение в активном режиме, но не получает событий (например, пользователь заблокировал экран).
  • Активное — нормальное состояние приложения в режиме использования.
  • Фоновое — приложение скрыто, но исполняет код.
  • Приостановленное — приложение находится в памяти, но не исполняет код.

Активное и неактивное для данной темы неинтересны. Большинство путается в ситуациях, когда приложение переходит из активного в фоновое, потом в приостановленное, а затем в нерабочее.
Когда вы нажимаете кнопку Домой, программа переключается из активного в фоновое. Большинство приложений через нескольких секунд после этого переходят в приостановленное. Первый технический нюанс заключается в том, что приостановленное приложение остается в памяти устройства. Это сделано для того, чтобы оно могло продолжить работу быстрее, если вы решите к нему вернуться. При этом оно не использует ресурсы процессора и батарею.

Можно предположить, что если ПО находится в памяти, то его нужно удалить оттуда для освобождения ресурсов. В действительности, iOS делает это самостоятельно. Если у вас есть приостановленное приложение и вы запускаете ресурсоемкий софт, например сложную трехмерную игру, iOS сама выгружает из памяти приостановленную программу и перемещает ее в Нерабочее состояние. Другими словами она будет полностью удалена из ОЗУ и запущена с нуля при следующем запуске.

Выводы

Главное правило многозадачности iOS звучит следующим образом: панель многозадачности является лишь списком недавно использованных приложений, вне зависимости от того, в каком состоянии они находятся. Операционная система самостоятельно выгружает задачи – тогда, когда это необходимо.

В каких случаях следует закрывать приложения и освобождать оперативную память устройства? Ответ прост – в теории никогда. Крайне редко случаются ситуации, которые должны заставить вас перезапустить программу. Разве что зависания или некорректная работа. Вероятно, в это трудно поверить, но iOS сама прекрасно справляется с распределением нагрузки на процессор и аккумулятор. Продукция Apple – это техника, которой просто нужно пользоваться, не создавая себе лишних сложностей.

Источник: MacDigger.ru

Следите за новостями Apple в нашем Telegram-канале, а также в приложении MacDigger на iOS.

Присоединяйтесь к нам в Twitter, ВКонтакте, Facebook, или через RSS, чтобы быть в курсе последних новостей из мира Apple, Microsoft и Google.


41 комментарий

  • 2-3 минут в день можно продлить... Аффигеть..
  • Сказочники, блин!!! Даже комментировать лень.
    • А кому нужны твои никчемные комментарии? Есть реальные какие-нибудь доводы, чтобы оспорить?! Статья интересная
      • А что тут комментировать?! Попробуй сам - невыгружай всякие мессенджеры, программы использующие геолокацию и т.д., когда не пользуюешся ими. Или например раз в сутки используешь, нахрена она будет у меня ресурсы жрать и спутники дергать?! Так же попробуй пооткрывать приложений штук 30 и поюзать браузер. Это на старых устройствах очень заметно. Так что - СКАЗОЧНИКИ.
        • буду тестить, есть 5 и есть 6s. Тут все не так однозначно. Если выгружать проги, которые к gps обращаются, а остальные не трогать. Я не пользуюсь 30-ю программами
        • Вообще-то речь идет о настроенном аппарате, где в настройках отключено фоновое обновление контента и доступ к службам геолокации.
      • Да есть! Запусти одновременно safari, shazam и soundhound, они съедают всю ничтожную одногигабайтвую оперативку, твик cleaner показывает что свободно всего 30-50 Mb оперативки и батарея садится на глазах! А если свайпнуть все открытые приложения, то память разгружается до 300-350 и батарея садится В РАЗЫ медленее! Возможно в 6s ситуация получше, ведь там уже ЦЕЛЫХ 2 Гб в 2015 году оперативки.
  • у меня на air всё время занято 900мб озу.
  • Экспериментирую уже лет 5-6. При принудительной выгрузке приложений (особенно Google-овских и использующих геолокацию), аккумулятор держится подольше. Так что ...
  • На ios 7 и 8 лишние закрывал, так как из за нехватки памяти вываливались нужные проги. Например, если я запускал GPS-трекер в режиме записи, а потом открывал камеру, то всё, хана - запись трека прерывалась. Теперь, после отката на ios 6, такой проблемы нет, я вообще забыл, что такое закрывать приложения. Батареи хватает на 6...7 часов включенного экрана (без игр). Как по мне, вполне достойный результат. iPhone 4S.
    • больше возможностей больше озу требует, виндовс хр хорошо и на 128 мб озу живёт, 10ка даже не запустится, нужно это учитывать
      • Windows xp и 128мб ОЗУ? ;) да вы шутник уважаемый. С таким количечтвом ОЗУ более/менее шевелилась разве что windows 98 и более ранние.
        • Вполне комфортно было работать под ХР со 128 МБайт ОЗУ. Она и на 64 работала, но там уже было всё плохо. 98-я с трудом, но шла на 16 МБайт, на 32 и выше просто летала. 128 для нее — дикая и ненужная роскошь, 64 с головой хватало на всё. У вас, наверное, когнитивные искажения из-за дикой прожорливости современного софта. А тогда вот хватало и 128 МБайт. Сейчас, кстати, больше всего ОЗУ отжирает веб (и сами браузеры). Тогда с этим никаких проблем не было.
          • Да были времена, у меня было 256 я был чуть ли не мажер
          • А у меня был 1м и нужно было очень постараться, чтоб заставить там работать две задачи одновременно через desqview, например софт для BBS в фоновом режиме и читалку почты или Волков коммандер. Чтобы впихнуть невпихукмое нужно было откусывать часть памяти от памяти видеокарты и использовать всякие манипуляции с драйверами. Что вы знаете о том что такое боль, со своими 128м? ;)
  • Скажите это Виберу, который активно садит батарею, когда висит в фоне
  • такие приложения как Viber, Skype, Moves, и Maps with me - продолжают расходовать заряд находясь даже в фоне.
    • А если есть Джеил свайпом все закрыл и не мудришь.
    • Значит их выгружать следует, а остальное пусть висит. Oovoo тоже память жрёт как напуганная. Кстати, всяко лучше чем скайп
    • ко всему skype и viber одновременно очень сильно тратят заряд, в статистике аккумулятора пишется "слабый сигнал" по-отдельности такого не наблюдаю
  • Вот бараны упрямые к комментариях, ВАМ ЖЕ ЧЕТКО И ПОДРОБНО РАССПИСАЛИ КАК РАБОТАЕТ IOS И ЧТО НЕ НАДО ВЫГРУЖАТЬ ПРИЛОЖЕНИЯ!!! ДЕБИЛЫ КОГДА ВЫ ЭТО ПОЙМЕТЕ?? И ПОХЕР ЕСЛИ ЭТО ВИБЕР, И ПОХЕР ЕСЛИ ЕСТЬ ПРИЛОЖЕНИЯ С ГЕОЛОКАЦИЕЙ!!! ВСЕ ОСТАНАВЛИВАЕТСЯ, ВСЕ СТАВИТСЯ НА ПАУЗУ!! ГЕОЛОКАЦИЯ ПРЕКРАЩАТЬ ИГРАТЬ В ФОНЕ, В НАСТРОЙКАХ СМОТРИТЕ В КАКИХ ПРИЛОЖЕНИЯХ "ВСЕГДА" а В каких "при использовании программы", я сам лично не выгружаю приложения начиная с IOS 7 и аккумулятор держится весь день, зато теперь удобно возвращаться к открытому приложению
    • Блонда, не истери тут, и иди смотри свои бьюти-блоги.
    • Мозг людей безнадежно испорчен виндой. Не лечится, так что не истери - пусть закрывают. С людьми проще согласиться, чем объяснить им, почему этого делать не нужно :) Когда коту делать нехер - он яйца лижет :)
      • Согласен, люди какие то больные, ну да блин Apple настолько дебилы, что выпустили iOS где все одновременно работает в фоне, глупость же! А если iPhone быстрее разряжается люди комплексуют на "недавно открытые приложения", не знаю какой кретин назвал это "Многозадачностью"
        • Я вообще считаю, что смартфон должен быть только однозадачным, с возможностью быстрого переключения задач. Один хрен полноценно работать с двумя и более приложениями на маленьком экране практически невозможно, а атомный реактор для смартфонов пока не придумали :) Все остальное сразу должно замораживаться и никакой активности в фоне быть не должно. Исключение - музыка. Если программы должны посылать и принимать уведомления - для этого есть Push. Примерно так сейчас и есть на iOS, и это правильно.
          • iOS очень умная система, если что то используется в фоне она сразу присылает окошечко с надписью, что это приложение хочет иметь доступ к вашей геолокации даже если это приложение не запущено, вот эти приложения могут быть причинами разрядки телефона, а остальные приложения даже использующие геолокацию (при использовании программы) не так страшны в фоне и ничего не едят, согласись, люди жалуются на все приложения что является не правильным
            • Все так. Поэтому надо просто лезть в настройки и отключать приложения использующие геолокацию даже когда с ними ни кто не работает.
  • Согласен со статьёй. Приложения в фоне не садят аккум,...сравнивал. Садит его 3g и wifi...игры, видео...
  • Пофиг что аккамулятор садится.Блин трудно в зарядку воткнуть.Слава Богу Россия не Индия,где по пять раз в день электоричество отключают.
  • ололоша 3 года назад
    0
    что это было? более бездарной статьи я не читал ,афтар реально верит в то что он написал?
  • На айфоне приложения в фоне не расходуют заряд! Это ваш 3G/LTE и WI-FI РАСХОДУЮТ! Сделайте эксперимент, откройте несколько приложений - оставьте их в фоне и выключите wi-fi и сотовые данные и проверьте "жрут" ли ваши приложения в фоне! Как маленькие ей Богу
    • При сворачивании приложений 3G и wi-fi перестают работать с приложениями, это ЗАКОН Apple которые должны соблюдать все разработчики приложений, в фоне могут работать приложения только с помощью джейлбрейка!
  • Да да скажите это навигатору и стрелке :)
  • в редакцию принимают исключительно школьников?
  • > что как только вы вышли из приложения, единожды «тапнув» на клавишу «Домой», его работа останавливается скажу больше: опускание верхней и поднятие нижней "шторки" приостанавливает приложение. проверьте на любой программе, ведущей вас по gps - после скрытия шторки будет горячий запуск gps