Как я могу узнать, откуда сообщение отправлено

Я использую порт obj-c библиотеки с открытым исходным кодом, и, похоже, в нем есть ошибка. Он очень большой, и переходить через него на самом деле не вариант.

Мне удалось выяснить, что сбой вызван следующим.

-[CALayer release]: message sent to deallocated instance 0x1d847aa0

Есть ли способ для меня, чтобы узнать, откуда исходит сообщение или еще лучше, какой объект скрывается за: 0x1d847aa0?

Спасибо

1 ответ

Решение

Вы можете "Включить объекты-зомби" на вкладке "Диагностика" параметра "Редактировать схему...".

Xcode тогда сломается, если сообщение будет отправлено на освобожденный экземпляр.

Вы также можете профилировать с помощью инструментов, используя инструмент "Зомби", это отобразит всю историю выделения / сохранения / выпуска для объекта зомби:

Другие вопросы по тегам