Принудительная остановка и очистка кэша

Автор: Laura McKinney
Дата создания: 6 Lang L: none (month-011) 2021
Дата обновления: 1 Июль 2024
Anonim
Очистка памяти ТВ БОКСА с приложением SD MAID
Видео: Очистка памяти ТВ БОКСА с приложением SD MAID

Содержание


Если у вас есть проблема с приложением на вашем Android-смартфоне, вы, возможно, прочитали, что вы должны сделать «Force Stop», а затем «Clear Cache», чтобы исправить это. И на самом деле, это вполне может быть именно то, что вам нужно сделать. Но почему это помогает? Что делает «Force stop» и что такое кеш? Позволь мне объяснить.

Force Stop

В основе Android лежит ядро ​​Linux, компонент, отвечающий за управление памятью и процессами, а также целый ряд других ресурсов. Каждый раз, когда вы запускаете приложение, вы фактически запускаете процесс Linux.

Процесс - это логический контейнер для программы (приложения). Он запускается ядром и используется для совместного использования системных ресурсов (включая память и процессорное время) между всеми запущенными приложениями. Каждый процесс имеет идентификатор, известный как PID (идентификатор процесса); приоритет, насколько это важно; собственное адресное пространство, а также связанные страницы физической памяти; и некоторая информация о состоянии: работает (или работает), спит, остановлен и зомбирован.


Задача ядра состоит в том, чтобы планировать время процессора и выделять память для процесса, чтобы он мог работать. Это работает так, что ядро ​​отдает куски процессорного времени каждому из запущенных процессов. Если процесс находится в спящем режиме (поскольку он ожидает что-то вроде данных из сети), он не получает никакого времени процессора. Это жонглирование процессов происходит на миллисекундном уровне, очень быстро, и, как и в кадрах мультфильма, вы получаете плавность и возможность одновременного запуска нескольких программ.

Наконец, при выходе из приложения ядро ​​очистит все ресурсы, используемые приложением (например, открытые файлы, выделенную память и т. Д.), И в конечном итоге удалит процесс, созданный для этого приложения.

Каждое приложение может находиться в одном из нескольких состояний: запущено, приостановлено или остановлено. Они отличаются от состояний процесса, определенных в Linux, и представляют «жизненный цикл активности», определенный в Android. Google называет это так: «По мере того, как пользователь перемещается по вашему приложению, выходит из него и обратно, экземпляры Activity в вашем приложении переходят через различные состояния в своем жизненном цикле».


Интересно то, что Android никогда не убивает приложение напрямую. Вместо этого он убивает процесс, в котором выполняется действие, уничтожая не только действие, но и все остальное, выполняемое в процессе. Это может быть сделано, когда необходимо освободить ОЗУ или пользователь может завершить процесс с помощью принудительной остановки в диспетчере приложений.

Когда все работает без сбоев, приложение переходит из одного состояния активности в другое и в конечном итоге либо будет убито Android (после перехода в остановленное состояние), либо будет просто зависать в фоновом режиме, пока пользователь не выведет его на передний план. опять таки. Однако, если что-то пойдет не так, приложение может плохо себя вести. Он может перестать реагировать на определенные события, может застрять в каком-то цикле или просто начать делать непредсказуемые вещи.

В таких случаях приложение может быть необходимо убить, а затем перезапустить. Вот для чего нужен Force Stop, он в основном убивает процесс Linux для приложения и убирает беспорядок!

Причина, по которой рекомендуется использовать Force Stop при попытке исправить некорректно работающее приложение, заключается в том, что 1) оно убивает текущий запущенный экземпляр этого приложения и 2) это означает, что приложение больше не будет обращаться к каким-либо из своих файлов кэша, что приводит к нам к шагу 2: очистить кэш.

Очистить кэш

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

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

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

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

Приложения также могут хранить файлы более постоянно, используя каталог данных приложения. Это отличается от каталога кэша и предназначено для постоянных файлов, принадлежащих приложению. Поскольку Android может удалять файлы в каталоге кеша без уведомления приложения, пользователи также могут безопасно удалять эти файлы с помощью кнопки «Очистить кеш»!

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

Дополнительным преимуществом очистки кэша является то, что он освобождает место для хранения. Так что, если у вас мало внутренней памяти, то очистка кэшированных данных для всех приложений может помочь.

Заворачивать

После некоторых экспериментов во время бета-тестирования Android P последняя версия Android от Google сохранила те же кнопки и функции для Force Stop и Clear Cache, что и в предыдущих версиях. Вы все равно найдете оба в меню настроек приложений.

Тем не менее, Android 9.0 Pie представляет что-то новое - автоматическое закрытие неотвечающих приложений. Это означает, что, надеюсь, вам не придется принудительно закрывать приложения, которые перестают отвечать, система должна обрабатывать все автоматически. Таким образом, пользователи не увидят диалоговое окно «приложение не отвечает» (ANR), чтобы предупредить их о не отвечающем приложении, если они запускают Pie. Однако, если по какой-либо причине приложение перестает отвечать на запросы, пользователи Pie должны по-прежнему использовать кнопки Force Stop и Clear Cache, чтобы закрыть приложение, а затем перезапустить его.


Если вам нужны инструкции о том, как очистить кэш приложений, есть несколько превосходных руководств, в том числе о том, как очистить данные и кэш приложений в Android 6.0 Marshmallow и как восстановить место на диске, очистив кэш на устройстве Android. Использование Force Stop очень похоже, просто следуйте инструкциям в связанных руководствах, но нажмите «Force Stop» вместо «Очистить кэш».

Какой у вас опыт использования Force Stop и Clear Cache? Существуют ли какие-либо приложения, которые, по вашему мнению, используют много места для хранения кэшированных файлов? Пожалуйста, дайте мне знать в комментариях ниже.

Huawei FreeLace может подключаться непосредственно к Huawei P30 Pro для зарядки на ходу.Беспроводные наушники Huawei FreeLace были представлены вместе с P30 и P30 Pro, и уже выглядят более перспективн...

Наушники Huawei FreeLace лучше всего работают с телефонами Huawei с EMUI 9.1 или более поздней версии.Подобно тому, как новые AirPod оптимизированы для пользователей iPhone, наушники Huawei FreeLace л...

Выбор сайта