我有一个当前基于 Core Data 构建的应用程序,并且有多个线程和多个 NSManagedObjectContexts。这是一个音乐应用程序,所以后台线程上总是有运行的东西,不需要干扰主线程,反之亦然。
到目前为止,我一直在慢慢解决各种死锁和线程安全问题,但坦率地说,我在试图保持 MOC 同步并让它们不阻塞线程,并且没有访问已删除的实体等方面遇到了困难.
我的问题是:如果我放弃 Core Data 并创建一些自定义 NSObjects 来跟踪属性,这会使这类问题变得更简单吗?是否可以从多个线程访问 NSObjects(不会导致死锁等),这样我就不必维护多个副本并同步它们?或者我还会面临类似的挑战吗?
我对 Objective-c 很陌生,所以我真的在寻找更简单的解决方案,而不是最复杂的解决方案。任何指向此类事物的良好设计模式的链接也值得赞赏!