驱逐对象时的NSCache EXC_BAD_ACCESS

时间:2015-02-01 04:45:12

标签: ios objective-c ios8 crash exc-bad-access

首先关闭:我已查看其他NSCache相关帖子,并发现与我的问题类似的任何内容。

崩溃日志中的顶级崩溃显示后台线程试图驱逐NSCache中的对象(附加了堆栈跟踪)。

我的代码库继承自第三方,它的凌乱 ......在全球范围内,应用程序中散布着几个NSCache个对象......所以我不知道从哪里开始。

我的崩溃报告工具(Crashlytics)提供了一些值得注意的信息:

  1. 95%的崩溃发生在应用程序聚焦
  2. 我们的应用正在使用ARC。
  3. 在所有支持的操作系统(iOS7,iOS8)上发生崩溃
  4. 通过我们在代码中通过全局搜索找到的所有NSCache实现,我们永远不会设置缓存对象delegate(选择器{{1}也不会出现在我们的任何代码或第三方代码中。但是,我们非常好用的第三方静态库之一可能是
  5. 其他应用程序线程的堆栈跟踪始终包含有关内存警告的某种形式消息。
    • 没有其他模式出现在查看相邻的线程'堆栈痕迹。
  6. 跟踪用户在应用中的屏幕视图序列的分析具有截然不同的路径 - 没有特定的视图控制器,其使用会导致麻烦。
  7. 我的崩溃报告中的消息表明它在尝试调用由cache:willEvictObject:定义的方法cache:willEvictObject:时失败。

    crash log

    提前致谢!

0 个答案:

没有答案