-1

データはダウンロードされ、NSFetchRequest を使用して (子/親コンテキスト) バックグラウンド スレッドでコア データに書き込まれ、最初の読み取りは問題ありません。更新後、コア データからデータを取得し、新しい値で更新します。メインスレッド/メインコンテキストでデータ NSFetchRequest を再度読み取ります。それはまだ古い値を返します。コア データ テーブルを確認したところ、新しい値が含まれています。アプリを強制終了して再起動すると、更新されたデータが表示されます。

私は何を間違っていますか?

ps:コードを投稿できず申し訳ありません。その巨大なプロジェクト。コア データに基づくプロジェクトの他のすべての部分は完全に機能します。この部分だけが私の神経質になります。:-(

4

1 に答える 1

0

問題は、メイン スレッドでオブジェクトを取得する fetchresult コントローラーと、複数の属性でグループ化し、現在のタイム ゾーンの日付を計算する必要があったことです。だから私はバックグラウンドスレッドですべてを行っていました。コアデータオブジェクトはスレッドセーフではないことをもう一度学びました!

于 2013-09-09T12:41:18.413 に答える