我有一個方法,使用NSManagedObjectContext的副本在後臺線程中運行,NSManagedObjectContext在後臺線程根據Apple建議啓動時特別生成。從主線程managedobjectcontext從後臺線程請求標量值
在這個方法中,它調用一個類的共享實例,這個共享實例用於管理屬性值。
是管理性質的共享實例使用的NSManagedObjectContext在主線程,現在即使主線程在後臺線程的方法不應該使用的NSManagedObjectContext,應該不是真的,如果共享的屬性管理類做或做重要不使用這樣的上下文,因爲它只是將標量值返回到後臺線程(至少這是我的理解)。
那麼,爲什麼在從後臺線程調用時通過主線程上下文檢索值時共享屬性類會掛起?它不需要傳遞一個NSManagedObject,甚至不需要更新一個,所以我看不出它會產生什麼差異。
我可以理解,我的方法可能是錯誤的,但我想在基本層面理解爲什麼會這樣。目前我無法理解整個系統足以超越蘋果推薦的實現方法,這只是我不喜歡的黑魔法方法。
任何幫助,非常感謝。
我會盡快給出結果並對結果提供反饋。 –