Comments 8
А через DYLD_INSERT_LIBRARIES не проще было бы?
+2
Хм… За все мои 6 лет программирования на Objective-C мне ни разу не приходилось переопределять метод retain (создание синглотна исключение). Всегда дебажил при помощи Allocations ну и Instruments в новой версии.
0
Мне приходилось сталкиваться с вылетом Instruments/Allocations из-за низкоуровневых багов в запускаемой им программе, даже gdb вылетал на комплексных многотредовых real-time проектах, потому пришлось использовать valgrind. он сократил время отладки в разы и дал гарантию стабильности, в общем-то когда gcc и valgrind выдает 0 errors 0 warnings, то это хорошо и никакой Instruments/Allocations уже не нужен. Недостаток valgrind в его тормозах, часто не позапускаешь, FPS в симуляторе падает до 1-5, зато в конце есть полный лог с которым можно работать в оффлайне, например. Instruments/Allocations не тормозит выполнение программы, но тяжелый, из-за чего глючной, он тоже успешно решает свою нишу задач. 2 разных инструмента. Отверткой и топопром можно вырыть яму, но для большой ямы лучше топор, а для малой отвертка. когда существует множество ям разной конфигурации, то хороши оба инструмента.
+1
Может Вы просто неправильно используете существующие инструменты? Уверен, что правильный подход с Instruments тоже бы сработал.
0
Ваш вариант верный, если можно обходиться только одним инструментом, значит это хорошо. Касаемо retain все верно, его должно хватать. В моем случае retain был часным случаем среди зоопарка багов, он падал. А с valgrind успешно выловил все баги включая retain. Согласен, несколькое отклонился от темы именно retain.
0
Ваш пример наталкивает на мысли о лопате. И о том, что идеальных инструментов, хорошо подходящих для конкретной цели, не существует. В принципе, так оно и есть. Цели, для которых та или иная утилита была написана, могут сильно, а могут и совсем едва отличаться от целей человека, её использующего. Но идеально она будет подходить лишь тому, кто её написал (если он её написал хорошо, разумеется).
0
Sign up to leave a comment.
Отладка Objective-C ARC retain