Этот вопрос является продолжением этого другого вопроса .
У меня есть игра в App Store, которая очень редко вылетает при загрузке на iPad1. Игра требует больших ресурсов и действительно загружает несколько больших текстур при запуске. Перезапуск устройства устраняет проблему. Я не смог воспроизвести это на своих собственных устройствах, поэтому у меня есть отчеты / данные только от нескольких клиентов.
(Предположим, ради этого вопроса, что (а) моему приложению действительно нужно загрузить все текстуры, которые оно загружает, и (б) я не делаю ничего глупого, например, утечки чего-либо или избавления от чего-либо как как только смог.)
Вопрос: имеет ли смысл пытаться загружать текстуры медленнее?
Смысл в том, что когда мое приложение загружает текстуры, когда оно запускается, оно начинает быстро использовать память. Если есть другие приложения, которые являются резидентными и используют память, которая мне нужна, ОС начнет отправлять уведомления тем приложениям, которые должны освободить память. Но я понимаю, что это дает этим приложениям пару секунд, чтобы освободить память и / или выйти, и в течение этих секунд мое приложение продолжает агрессивно загружать текстуры. Так что мысль в том, что ОС паникует, и ей нужно что-то убить сразу, и убивает мое приложение. Но, возможно, если бы я загружал вещи медленнее, у других приложений было бы время ответить на предупреждения памяти и освободить их, и все бы сработало.
Имеет ли смысл эта линия мысли? У вас есть опыт применения такого подхода, помогающего избежать сбоев?