Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.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(Xcode 4.3)PostNotificationName:object:userInfo:无法执行EXC\u BAD\u访问_Ios_Xcode_Events_Notifications_Exc Bad Access - Fatal编程技术网

iOS(Xcode 4.3)PostNotificationName:object:userInfo:无法执行EXC\u BAD\u访问

iOS(Xcode 4.3)PostNotificationName:object:userInfo:无法执行EXC\u BAD\u访问,ios,xcode,events,notifications,exc-bad-access,Ios,Xcode,Events,Notifications,Exc Bad Access,尝试发布通知时,我收到EXC\u BAD\u访问(代码=2,地址=0x8)错误 偶尔我会看到: -[__NSMallocBlock__ handleMessagesReceived:]: unrecognized selector sent to instance 0x9855cd0 通知张贴代码如下所示: NSDictionary *notificationInfo = [NSDictionary dictionaryWithObject:outputArray forKey:@"messa

尝试发布通知时,我收到EXC\u BAD\u访问(代码=2,地址=0x8)错误

偶尔我会看到:

-[__NSMallocBlock__ handleMessagesReceived:]: unrecognized selector sent to instance 0x9855cd0
通知张贴代码如下所示:

NSDictionary *notificationInfo = [NSDictionary dictionaryWithObject:outputArray forKey:@"messages"];
[[NSNotificationCenter defaultCenter] postNotificationName:kMESocialHeatmapMessagesReceivedNotification object:nil userInfo:notificationInfo];
观察者代码如下所示(这是该通知的唯一处理程序):

和处理程序代码:

- (void)handleMessagesReceived:(NSNotification *)notification {...}
我已经清理了项目(CMD-SHIF-K、CMD-ALT-SHIFT-K并从组织者中删除了派生数据),重新启动了Xcode和我的机器,甚至重新编写了相关代码。同样的问题,我只是看不出那个问题

非常感谢您的任何见解

干杯

克里斯

=========更新(无法回答我自己的问题…)============

菲利普和雷恩,欢呼声为我指明了正确的方向

我知道EXC_BAD_ACCESS表示一个dealloc'd对象,但在本例中,这是不可能的,因为系统的主类保留了所讨论的对象(热图)


问题原来是创建热图和填充它共享的数据模型之间的竞争条件。在热图创建完成之前,偶尔会发生填充(两者都是事件驱动的)

我最终重新编写了代码,以便持有热图的类在热图更干净后进行同步调用来填充数据

谢谢你的意见,这让我省去了一点头疼


Chris

Error
EXC_BAD_ACCESS
是在未初始化对象或未向已释放对象发送消息的情况下释放对象而产生的错误,请查看有关EXC_BAD_ACCESS的更多信息。问题原来是创建热图和填充其共享的数据模型之间的竞争条件。在热图创建完成之前,偶尔会发生填充(两者都是事件驱动的)

我最终重新编写了代码,以便持有热图的类在热图更干净后进行同步调用来填充数据

谢谢你的意见,这让我省去了一点头疼


Chris

在您添加
self
作为观察者后,似乎正在解除分配
self
对象。什么样的对象正在处理通知,它是如何创建和保留的?干杯,Phillip。这为我指明了正确的方向。我知道EXC_BAD_ACCESS表示一个dealloc'd对象,但在本例中,这是不可能的。
- (void)handleMessagesReceived:(NSNotification *)notification {...}