Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为什么我接收到一个observeValueForKeyPath:ofObject:change:context:message和一个空的观察对象?_Ios_Objective C_Key Value Observing - Fatal编程技术网

Ios 为什么我接收到一个observeValueForKeyPath:ofObject:change:context:message和一个空的观察对象?

Ios 为什么我接收到一个observeValueForKeyPath:ofObject:change:context:message和一个空的观察对象?,ios,objective-c,key-value-observing,Ios,Objective C,Key Value Observing,我有一个对象正在接收它未处理的observeValueForKeyPath:ofObject:change:context:消息。这似乎是因为我根据观察对象的类来决定是否处理它,在这种情况下,传递的观察对象是null! 很明显,我可以将这些关于null对象的消息放入垃圾箱,但是为什么我会收到这样的消息呢? 它似乎与我正在观察的一个对象有关,因为我识别出带有消息的keypath。因此,我将仔细查看以确保删除了所有添加的观察者,但我仍然希望知道null观察对象如何发送消息 你能在你认为这个错误被抛出

我有一个对象正在接收它未处理的
observeValueForKeyPath:ofObject:change:context:
消息。这似乎是因为我根据观察对象的类来决定是否处理它,在这种情况下,传递的观察对象是
null
! 很明显,我可以将这些关于
null
对象的消息放入垃圾箱,但是为什么我会收到这样的消息呢?
它似乎与我正在观察的一个对象有关,因为我识别出带有消息的
keypath
。因此,我将仔细查看以确保删除了所有添加的观察者,但我仍然希望知道
null
观察对象如何发送消息

你能在你认为这个错误被抛出的地方粘贴一些代码吗?(基于回溯)我的猜测是,它在发送观测者后被释放,或者你可能在那里有线程问题,不确定是否需要使用代码。它被抛出到
observeValueForKeyPath:of object:change:context:
方法中,因为我调用了super,以便可以看到任何不需要的观察对象(该方法中的日志显示观察到的对象为null)。我认为线程可能是一个竞争者-它是一个CoreData对象,我认为在将上下文合并到主线程之前,它在另一个线程上更新。