2012-04-05 18 views

Antwort

2

Es gibt ein internes 'fehlerhaftes' Set-Objekt für Core Data zurück, das wie ein Satz funktioniert. Wenn Sie auf ein Element im Set zugreifen, wird es beim ersten Zugriff in Ihren persistenten Speicher für die Daten verschoben. Dies ist effektiv indiziert, so dass es schneller ist als viele Abrufanforderungen, und manchmal kann der Beziehungsfehler bereits ausgelöst worden sein, so dass es überhaupt nicht in den Speicher gehen würde.

Verwenden Sie die Umgebungsvariable com.apple.CoreData.SQLDebug, um herauszufinden, was gerade unter der Motorhaube vor sich geht, und optimieren Sie die Leistung. Setze es in deinem Schema auf 1.

+0

Also, wenn es einen Fall gibt, wo ich entweder direkt auf die Beziehung zugreifen konnte (wie oben) oder einen Abruf ausführen, die meiste Zeit auf die Beziehung zugreifen, die bessere Option? – bijan

+0

Ja, auf die Beziehung zugreifen. – wbyoung

Verwandte Themen