предупреждение: предупреждение о получении памяти уровня 1 и сбой - PullRequest
2 голосов
/ 10 июня 2011

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

Мое приложение получает эту ошибку и после этого при попытке нажатьстрока для ячейки (вызывающая didSelectRowAtIndexPath), в которой происходит сбой.И это дает мне сообщение об ошибке UIImage отправил сообщение на освобожденное сообщение.Я предполагаю, что это из-за предупреждения памяти, что он освободил некоторые UIView и, следовательно, он падает.

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

Ответы [ 2 ]

0 голосов
/ 10 июня 2011

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

0 голосов
/ 10 июня 2011

Вам не удалось сохранить то, о чем вы заботились.Из твоего сообщения я бы заподозрил, что объект UIImage.Начните с запуска Static Analyzer и посмотрите, сохраняете ли вы что-то очевидное.Затем осмотрите свои ивары, особенно те, которые связаны с изображениями.Удостоверьтесь, что вы обращаетесь к своим иварам с помощью аксессоров, а не напрямую (за исключением init, самих аксессоров и dealloc).Убедитесь, что свойства вашего объекта определены с помощью «retain».

Вы можете использовать инструмент «Zombies», чтобы помочь вам отследить, какой объект недостаточно сохранен.

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