Зачем перезагружать устройство и как узнать, как много памяти занимает кэш приложений
Многие замечали, что если пользоваться смартфоном долго без выключений и перезагрузок, устройство начинает работать медленнее и появляются проблемы вплоть до вылета приложений. А если перегрузить устройство, проблемы исчезают. Вспоминается анекдот про сломавшийся автомобиль: «А может пассажирам всем выйти и зайти?», который, возможно, появился не просто так.
Почему же так происходит? Что случается с устройством, которое долго не перегружалось, и каким образом на его работу влияет перезагрузка.
Причина — в ОЗУ. Если говорить кратко, то при закрытии приложения оно не полностью выгружается из оперативной памяти. Память «загромождается» все сильнее, как комната, в которую складывают всякие предметы. Вскоре туда уже сложно положить что-то новое. Впрочем, устройства на ОС Android защищены от того, чтобы занять «комнату» полностью, когда новому приложению невозможно выделить объем памяти для работы, принудительно выгружаются данные одного из старых приложений. Впрочем, от замедления работы это не спасает.
Ситуация осложняется еще и тем, что остатки приложений (их кэш) хранятся в памяти не «одним куском», а «рассыпаны» по ОЗУ, создавая много препятствий, которые нужно обойти работающим приложениям. А вот при перезагрузке все «останки» удаляются и комната бумаги вновь становится чистой.
Как мы помним из курса программирования, в момент запуска приложения операционная система выделяет для него область памяти — heap, «кучу». В момент, когда приложение закрывается, выделенная область памяти автоматически освобождается, даже если ее не освободили программно разработчики. Но кэшированные данные остаются. Этот тип данных, оставшись в ОЗУ, позволяет быстро вернуться к открытому приложению после того, как пользователь переключился на что-то другое. Например, смотрел Facebook, а потом заглянул во «ВКонтакте». Он нашел «ВКонтакте» ровно в таком же состоянии, как и оставил — все время его отсутствия данные сохранялись в кэше.
И таких кэшированных данных в памяти устройства может быть довольно много. А насколько много? Каждый может узнать это самостоятельно.
Для этого нужно сделать несколько шагов. Для Android-телефона процедура следующая. Заходим в «Настройки», потом нажимаем на «Систему», и далее в «О телефоне». Во вкладке «О телефоне» необходимо семь раз нажать на строчку «Номер сборки». Появится сообщение «Вы вошли в режим разработки». После этого пользователю становятся доступны дополнительные функции. Возвращаемся в «Систему» и нажимаем вкладку «Для разработчиков». Затем «Работающие приложения». И затем — последнее действие — необходимо нажать на колесико в правой верхней части экрана. Теперь мы видим, сколько же ОЗУ у нас используется приложением, сколько — занято кэшем. И сколько — осталось свободным. Чем меньше свободной памяти, тем медленнее работает смартфон.
Отметим также, что кроме кэша память занимают приложения, работающие в фоновом режиме. Довольно часто избавится от них нельзя — они либо системные, либо автоматически включаются при включении телефона. Но побороться с ними тоже можно, достаточно удалить соответствующее приложение.
При перезагрузке устройства кэш очищается, и все то, что на нашем скрине отмечено желтым, освобождается. Что благоприятно влияет на общую производительность устройства и скорость его работы.
К слову, чтобы отключить режим разработчика, нужно зайти в пункт меню «Для разработчиков» в настройках, а потом поставить переключатель в положение «Выключен», он в правом верхнем углу.