如果我的实例正在观察另一个对象的某些属性,我是否应该调用removeObserver:forKeyPath:in dealloc?
答案 0 :(得分:10)
是强>
......除非在执行早期有更合适的时间。
观察者被视为非保留的参考文献。未注册可导致您的已释放实例被通知。
答案 1 :(得分:3)
你需要使用-removeObserver:forKeyPath:删除观察者 - [NSObject dealloc]运行,所以是的,在你的类的-dealloc方法中执行它会起作用。
参考这个问题。
Removing an Observer
question2