Нужно ли теперь удалять Observer в KVO вручную?

Я смущен, что теперь мне нужно удалить Observer в KVO вручную? Когда я искал этот вопрос на веб-сайте, я нашел Нужно ли удалять Observer в КВО вручную этот вопрос. Поэтому я попытался добавить символическое исключение NSKVODeallocateBreak. Но ничего не произошло, когда я установил наблюдателя на nil, не удаляя наблюдателя вручную. Затем я попытался посмотреть график отладочной памяти для NSKeyValueObservationInfo.

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

Нужно ли теперь удалять Observer в KVO вручную?

Затем я удаляю наблюдателя. Показывает что-то в памяти пропало.

Нужно ли теперь удалять Observer в KVO вручную?

Затем я установил наблюдателя на ноль. Кажется, ничего не произошло.

Нужно ли теперь удалять Observer в KVO вручную?

После этого я снова инициализирую наблюдателя и снова добавляю наблюдателя. Это показывает, что что-то в памяти появилось снова.

Нужно ли теперь удалять Observer в KVO вручную?

Наконец, я просто установил наблюдателя на ноль (без удаления наблюдателя). Это похоже на результат с removeObserver.

Нужно ли теперь удалять Observer в KVO вручную?

Что изменилось в КВО? Или мой тест не правильный?

Мой код вставлен сюда: https://gist.github.com/kingcos/36575befa94a464d7aff689daa34f5d6

Попробуйте понаблюдать за другим объектом, а не за self.

Willeke 24.03.2019 13:11

Не надо гадать, а читайте документы: developer.apple.com/documentation/objectivec/nsobject/…

Amin Negm-Awad 24.03.2019 17:11

Пробовали ли вы наблюдать за утечками памяти с помощью Instruments, получается ли такая же утечка?

anakin 24.03.2019 21:54
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
58
0

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