пятница, 1 февраля 2013 г.

Xcode tips: ловим over-release'ы

Over-release это ситуация, когда мы пытаемся работать с уже уничтоженным объектом. 
Обычно это приводит к не особо внятному дебаг-сообщению. Понятно что примерно случилось, но не ясно где.
Сообщение об ошибке при попытке обращению к уничтоженному объекту
Так что для отлова таких косяков очень полезно использовать зомбарей!
Заходим в Product->Scheme->Edit Scheme... или просто жмём ⌘ + <.
Edit Scheme
Там находим пункт Run <your_app_name> и ставим галку рядом с Enable Zombie Objects. Теперь objective-c объекты не будут выгружаться из памяти, вместо этого они будут правильным образом ругаться на попытку взаимодействия с ними и останавливать на себе выполнение приложения.
Ставший зобмарём объект ругается на то, что к нему пытаются обратиться



Комментариев нет:

Отправить комментарий