iOS: при добавлении объекта в качестве прослушивателя свойств необходимо ли «отменить регистрацию» прослушивателя перед освобождением моего объекта? - PullRequest
1 голос
/ 18 октября 2011

Поскольку я зарегистрировал свой объект как слушатель свойства. Нужно ли мне выполнять какие-либо «неслышащие» действия перед тем, как отпустить объект.

1 Ответ

0 голосов
/ 18 октября 2011

Вы не должны продолжать наблюдать за объектами, которые вы не сохраняете (это относится к KVO, делегированию, уведомлению, любому другому шаблону слушателя).Вот опасность:

  • Вы наблюдаете объект («наблюдаемый») и сохраняете его.
  • Некоторые другие объекты также сохраняют «наблюдаемый»
  • Вы отпускаете »Наблюдаемый "
  • Вы освободили
  • " Наблюдаемый "изменяет свойство и уведомляет вас
  • Программа аварийно завершает работу

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

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