アプリケーションが起動すると、他のエンティティとの多対多の関係を含む一連のコンテキストオブジェクトが初期化されます。例えば、マルチスレッドコアデータ: 'メイン'コンテキストスレッド
- 歴史
- 私のトラックの歴史と私のトラックがO対多のトラックエンティティを含んでいるでしょうここ
。これらは(私の現在の実装では)メインスレッド上のコンテキストによって管理されています。
アプリが実行されている間、トラックエンティティはバックグラウンドで作成され、履歴とマイトラック(異なる管理対象オブジェクトのコンテキストにあります)に移動されます。すべてのバックグラウンドスレッドは、独自の管理オブジェクトコンテキストを持ちます。しかし、My TracksのHistoryを保存しなければならないときは、メインのコンテキスト/メインスレッド上にある必要があります。これは、メインスレッドが書き込みのためにブロックされている間に、重大で許容できないUI遅延を引き起こしています。
回避策の提案はありますか?