2011-11-17 23 views
1

我有一個iOS應用程序使用三種不同的模型coredata。數據從服務器的json提要中提取,然後保存。每個API調用都使用NSOperationQueue在線程上運行,因此它們永遠不會同時執行。在最後的調用中,我保存到正在存儲的最大模型,這是保存發生應用程序掛起之後。用戶界面變得無響應,調試器不會出錯。這隻發生在應用程序的第一次加載,之後每個後續的負載運行完美。我試過只加載最後的API調用,錯誤仍然發生。我收到委託回調controllerDidChangeContent:並且在該方法中什麼都不做。我很難過。謝謝你們的幫助。初始coredata保存結冰應用程序

+0

您是否異步保存數據? –

回答

2

這是「凍結」你的應用程序,因爲你很可能通過NSManagedObjectContextDidChangeNotification合併保存回主NSManagedObjectContext。這是iOS 5.0之前的已知限制。

要麼你可以更新到5.0,並使用已添加的父子MOC設計,或者可以跳過合併上下文和-reset主環境,並強制它在保存後重新加載相關數據。