Память, используемая любым приложением iPhone - PullRequest
5 голосов
/ 12 ноября 2010

Есть несколько вещей, которые я не понимаю в управлении памятью iOS.

  1. Я хотел бы знать, сколько памяти обычно занимает приложение iPhone при работе на устройстве (есть ли номер исправления, например 10 МБ?)

  2. Если приложение содержит много больших изображений, как это влияет на память? Они влияют только на память, когда они загружены?

  3. Как iOS управляет памятью, когда запущено несколько приложений?

Пожалуйста, помогите мне понять эти понятия.

Ответы [ 2 ]

4 голосов
/ 12 ноября 2010

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

Тем не менее, есть игровые приложения, которые, как сообщается, используют более 55 МБ памяти, однако ОС также сообщает, что эти игры убивают значительный процент времени, если они не запускаются сразу после перезагрузки устройства.

Если вы используете 22 МБ памяти или меньше, ОС все еще может убить ваше приложение, потому что не было достаточно свободной памяти, но ей также пришлось бы уничтожать огромный процент других приложений в магазине приложений, так что вы бы в очень хорошей компании.

Когда какое-либо приложение (на переднем или на заднем плане) запрашивает достаточно памяти, чтобы начать достаточно исчерпывать пул памяти, предупреждения о памяти отправляются другим приложениям. Если пул памяти становится достаточно маленьким, приложения уничтожаются, в том числе, возможно, приложение переднего плана, если оно сильно загружено.

3 голосов
/ 12 ноября 2010

Q1) Конечно, нет фиксированного значения.Каждое приложение (и экземпляр приложения) будет использовать различный объем памяти в зависимости от своих задач.Однако есть максимум.Достижение этого максимума вызовет предупреждение о памяти, и ОС может его убить.

Q2) Изображения: зависит от того, сколько вы показываете одновременно или посредством анимации.

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

Хорошая статья для лучших практик:

http://inessential.com/2010/06/28/how_i_manage_memory

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