ios - xcode 12.4升级导致的objc内存和线程崩溃
问题描述
在过去的几周里,我一直在尝试解决看似随机出现的崩溃问题。我相信这与使用 12.3 中的 xcode 12.4 创建的构建相吻合。我的同步操作因内存崩溃而开始崩溃EXC_BAD_ACCESS
。
我正在使用 NSOperationQueue。我试过使用僵尸对象,但因为错误在block
我看不到它们。
我的线程看起来像这样:
队列视图说developerSubmittedBlockToNSManagedObjectContextPerform
。
有没有人对可能导致问题的原因提出建议?或者其他方法来追踪它?谢谢
解决方案
对于可能有类似问题的任何人,我们最终将问题追溯到数据库链接的核心数据问题。
我们的数据库实体之间缺少一些反向关系。领先的理论是,由于不存在关系,系统将取消分配上下文。这将引发无用的线程问题。
这些关系多年来一直处于这种状态,我们认为在最近的 excode 更新中,内存管理系统可能已经更新,从而暴露了这个问题。
推荐阅读
- contiki - Contiki:如何在不同的 RPL 目标函数之间切换?
- python - 写入 postgresql 数据库表或 csv 文件?哪个更快?
- c# - 出现错误:模型引用未设置为对象的实例
- html - 图像和跨度在同一行?
- ios - SwiftUI App:如何隐藏 macOS 应用程序的标题栏?
- deep-learning - 深度学习:在改变 MNIST 图像大小时无法重塑数组
- forms - PrimeFaces 8.0 / 10.0.RC1:对话框表单验证在处理来自其他对话框的表单时运行
- typescript - 使用 TypeScript 的 Vue JS 材料设计
- git - 恢复丢失的提交到分离的头部
- c - 为什么需要指针类型强制转换?