iOS:模拟器中的最大内存?

时间:2013-02-12 17:17:32

标签: xcode ios-simulator

当我在模拟器中启动我的应用程序时,它会立即崩溃并出现“错误:内存读取失败”

在iPad / iPhone上一切正常,但是当我添加一个简单的“返回”时在核心数据线之前,模拟器启动正常:

return;
CCAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];

重要!!: 它不会在任何时候运行该代码,只需编译它。如果我加上“回归”,在另一个文件中的相同核心数据连接之前,它运行正常。看起来核心数据或某种东西有某种最大的“连接”?

我尝试过清洗Xcode(普通和清洁构建文件夹),清理模拟器(重置内容和设置),但没有成功。

其他问题:我有什么办法可以重新安装IOS模拟器吗?

2 个答案:

答案 0 :(得分:2)

“错误:内存读取失败”。我今天早上收到同样的消息。我发现它与Block有关。

我们知道,如果一个类有一个Block作为其成员,它应该是这样的:

@property(nonatomic, copy)BlockType block;

在向NSArray实例添加块时,我的错误是忘记使用copy:

[array addObject:aBlock];

最后我解决了这个问题:

MyBlockType copy = [aBlock copy];
[array addObject:copy];
[copy release];
祝你好运!

Upate Mar / 20/1013 另一种情况导致“错误:内存读取失败”。

- (void)blockCalledMethod{
    for (BlockType b in _dictionary) {
        b(self);
    }
}

解决我的问题的关键是使用.allKeys迭代NSDictionary。 但字典中的对象是Block,因此它必须与Block相对。

答案 1 :(得分:0)

我的iPhone模拟器遇到了同样的问题。我在XCode中有干净的代码

enter image description here

我已经重置了模拟器

enter image description here

希望它会有所帮助