ユーザーが同じデータを読み取っている間に、バックグラウンド スレッドがコア データ オブジェクトを更新できるようにするアプリケーションを作成しようとしています。
これに対する私のアプローチは、複数の NSManagedObjectContext を使用し、バックグラウンド スレッドが-save:
操作を行う前に、ユーザーが現在作業しているオブジェクトをフェッチし、そのすべてのプロパティと関係に対して再帰的に障害を発生させることです。このようにして、既に更新された値を見ることなく、ユーザーが NSManagedObjectContext で操作できるすべてのオブジェクトを取得します。
しかし、これは NSManagedObjectContext がメモリ使用量が高すぎるなどと判断できない場合にのみ機能し、(NSManagedObject 関係以外で) 私が明示的に参照していないオブジェクトに障害を起こし始めます。
問題は、NSManagedObjectContext は、私の側からの介入なしに、オブジェクトを再フォールトする必要があると判断できるかということです。
あなたの努力に感謝します、マーカス