Можно ли принудительно завершить фоновые приложения на iOS? - PullRequest
1 голос
/ 25 октября 2011

Я написал приложение, которое обрабатывает видео.Как мы знаем, обработка видео занимает огромное количество памяти при работе с разрешением HD.Мое приложение всегда казалось сбой.Но на самом деле я на 100% уверен, что в моем коде нет утечки памяти.Приборы не показывают утечки.

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

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

Согласно этому посту это общая проблема.

МойВопрос в том, можно ли сказать ОС, что нужно много памяти, чтобы ОС прекратила работу некоторых приостановленных приложений?Эти воспоминания сводят меня с ума, потому что я не могу исправить эту ошибку.

1 Ответ

1 голос
/ 25 октября 2011

Нет.Невозможно повлиять на что-либо за пределами вашей песочницы без вызовов API.Не существует для воздействия на другие процессы в общедоступном API.

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

Если вы используете OpenGLES и текстуры, если вы еще этого не сделали Сжатие ваших текстур.Какова конкретная причина всплеска выделения памяти?

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