1

スレッドごとに1つ持っている必要がありますが、それを超えて...もっと持っている必要がありますか?もっと持っているのは有害ですか?

たとえば、タブごとに1つのNSManagedObjectContextを持ち、その特定のタブに表示される永続ストア全体のサブセットを処理することを中心にアプリを構築したいと思います。

そうすれば、タブGUIに「その」コンテキストの通知をリッスンさせ、他の通知を無視させることができます。非同期ネットワーク呼び出しは、一度に1つのタブのコンテキストのみを変更します。

(注:iOS 3.2より前のクラスには大きなバグがあるため、NSFetchControllerを使用していません。これは3.0以降のアプリです)

NSManagedObjectContextの使用方法を誤解しましたか?もしそうなら、誰かが追加のNSManagedObjectContextインスタンスを使用する「良い」/「悪い」理由を指摘できますか?

更新:これは個別のコンテキストでは正常に機能しましたが、一時的な変更を処理するために1つのデータセットで複数のコンテキストを使用するように外挿しようとすると、すべてがひどく間違っています:そのトピックに関する質問を参照してください:一時的なNSManagedObjectsを作成/使用する方法は?

4

1 に答える 1

0

はい、可能ですが、それらを適切にマージし、コンテキスト間に古いデータがないことを確認する必要があることに注意してください。

于 2010-06-29T22:18:03.340 に答える