4

私は現在、別の開発者によって書かれた大きなプロジェクトをデバッグしています。プロジェクトはCoreData私が非常に新しいものを使用しています。一部が障害であるという事実が原因でクラッシュが発生していNSManagedObjectます(障害とは何かをよく理解していません)。オブジェクトを「障害ではない」に変換して、それが役立つかどうかを確認したいと思います。to make object not faultドキュメントを読むと、それは等しいと思いましたto fire fault(これも「起動する」とは何かがよくわかりません)ので、任意のメソッドを呼び出して起動することにしました。このメソッドはhasChanges、メソッドのリストにないためです。フォールトを発射しないでください。ただし、このメソッドを呼び出した後でも、オブジェクトはまだ障害のままでした。NSManagedObject「非障害」状態に変換する方法の例を誰か教えてもらえますか?

4

2 に答える 2

3

フォルトとは、オブジェクトやそのプロパティをオンデマンドでデータベースからフェッチするプロセスです。

たとえば、あるオブジェクトのプロパティまたはリレーションにアクセスしようとするとperson.name、そのオブジェクトのデータがメモリ内にない可能性があり、基になるデータ ストアからフェッチする必要があります。これは故障です。

フォールトは Core Data の動作の正常な部分であり、クラッシュとは関係ありません。オブジェクトのプロパティとリレーションにアクセスしようとすると、オブジェクトは失敗しません。

于 2013-08-16T10:26:35.843 に答える