Manchmal stürzt meine App ab, wenn ich meine Core Data-Datei durch Herunterladen und Parsen einer JSON-Datei aktualisieren möchte. Ich erhalte den folgenden Fehler:
CoreData: Fehler: Schwerwiegender Anwendungsfehler. Ausnahme wurde erwischt während der Verarbeitung der Kerndatenänderung. Dies ist normalerweise ein Fehler in einem Beobachter von NSManagedObjectContextObjectsDidChangeNotification. - [__ NSCFSet addObject:]: versucht, nil mit userInfo (null) einzufügen
Ist es wichtig, wo ich den NSManagedObjectContext innerhalb einer Iteration speichere, wenn ich Eigenschaften während der Iteration ändere?
hier ist mein Code:
%Vor% Sie sollten nicht auf den Kontext Ihres verwalteten Objekts in serialQueue
zugreifen. Werfen Sie einen Blick auf den Abschnitt Parallelität der NSManagedObjectContext
documentation .
Wenn in Ihrem Code der Typ NSPrivateQueueConcurrencyType
oder NSMainQueueConcurrencyType
nebenläufiger Code verwendet wird, können Sie eine der blockbasierten Methoden verwenden, um sicherzustellen, dass Sie sich in der richtigen Warteschlange befinden: