Kerndaten: Fehler beim Löschen / Hinzufügen von Objekten

7

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%     
schirrmacher 04.10.2013, 14:49
quelle

1 Antwort

22

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:

%Vor%     
Timothy Moose 04.10.2013, 16:22
quelle

Tags und Links