我最近将我的 iOS 项目转换为 ARC。我的项目中有两个目标。一个是应用程序本身,另一个是一组 GHUnit 测试。我有大约 200 个测试,它们在创建和修改 Core Data 对象方面做了很多工作。测试使用的核心数据存储是内存存储,一旦测试完成就会被丢弃(即它不会在任何地方持久化)。
当我的测试已经运行了一段时间(在抛出错误之前它们永远不会到达完全相同的点,但它总是围绕相同的测试)应用程序崩溃并出现 EXC_BAD_ACCESS(代码=2,地址=...)
控制台中的输出如下:
我已按照此答案中的说明进行操作,并将我的 GHUnit 目标的 main.m 文件设置为使用-fno-objc-arc
编译器标志,但这似乎没有帮助。
我真的不明白这些错误是什么意思,搜索它们似乎没有帮助。我唯一的猜测是我的内存不足,但我不确定为什么或如何,考虑到 ARC 应该为我释放对象。
我真的很感谢任何人可以给我解决这个问题的任何帮助!如果您有任何问题,请给我留言,我会尽快回复您!
谢谢!