Существует миф про многозадачность в iOS, который с давних пор муссируется среди владельцев iPhone и iPad. Якобы приложения в панели многозадачности iOS все время активны и замедляют работу, забивают память и расходуют заряд батареи устройства. «Эксперты» советуют для улучшения производительности и увеличения времени автономной работы девайсов удалять вручную эти самые приложения. Сегодня главный разработчик iOS Крейг Федериги опроверг подобные заявления.
Читателя 9to5Mac по имени Калеб заинтересовал этот аспект работы iOS и он решил обратиться с ним непосредственно к Apple. Причем свой вопрос он направил не кому-нибудь, а главе компании Тиму Куку.
«Привет, Тим.
Как часто ты закрываешь приложения в панели многозадачности iOS и нужно ли это делать для экономии заряда батареи? Просто хочу, чтобы ты остановил этот спор!».
Руководство Apple не часто ведет переписку с рядовыми пользователями «яблочных» гаджетов. Тем не менее, это бывает и подобные ответы можно рассматривать как официальную позицию компании. На вопрос читателя ответил старший вице-президент Apple по программному обеспечению Крейг Федериги.
«Привет, Калеб.
Я знаю, что ты спрашивал Тима, но я могу вставить свои пять копеек.
Нет и еще раз нет», – ответил Федериги.
Надо сказать, что панель многозадачности iPhone и iPad содержит не список активных приложений, а только перечень последних запущенных программ. ОС интеллектуально управляет задачами, самостоятельно выгружая или «ставя на паузу» активные процессы.
Когда пользователь нажимает кнопку Home, активная программа переключается в фоновый режим работы. Большинство задач через несколько секунд после этого переходят в приостановленное состояние. Первый технический нюанс заключается в том, что приостановленное приложение остается в памяти устройства. Это сделано для того, чтобы оно могло продолжить работу быстрее, если пользователь решит к нему вернуться. При этом оно не использует ресурсы процессора и батарею.
Можно предположить, что если программа находится в памяти, то ее нужно удалить оттуда для освобождения ресурсов. В действительности, iOS делает это самостоятельно. Если в ОС есть приостановленное приложение и пользователь запускает ресурсоемкое ПО, например сложную трехмерную игру, iOS сама выгружает из памяти приостановленную программу и перемещает ее в Нерабочее состояние. Другими словами она будет полностью удалена из ОЗУ и запущена с нуля при следующем запуске.