首页 > 解决方案 > 如何修复 iOS12 上的应用程序(使用 coredata)冻结问题

问题描述

我一直在一个应用程序中工作。它使用核心数据和神奇的记录库。它在 iOS 11 中运行良好。

但在 iOS 12 中,应用程序随机冻结,它不仅冻结而且死锁。为了再次使用该应用程序,唯一的方法是杀死并再次运行。

每当我在调试并且它冻结时,我都会暂停线程以检查当前正在执行的方法。每次它都与coredata有关。有时它停留在 executeFetchRequest 方法上。有时在本地数据库中保存数据时。

我认为还有其他一些开发人员也面临同样的问题供参考:- https://github.com/magicalpanda/MagicalRecord/issues/1331

我已经尝试了一些解决方案,例如:-

• 不使用默认上下文,而是使用privateQueueContext 并将其父级设置为默认上下文。• 按照某些线程中的建议尝试了 performBlockAndWait。但我无法修复它。在这里提出这个问题的原因只是为了让愿景清楚地前进。

谢谢,

标签: iosobjective-ccore-datafreezemagicalrecord

解决方案


推荐阅读