0

スレッドセーフな「フェッチまたは作成」を保証するCoreDataデザインパターンを探しています。2つの異なるスレッドが同時に同じレコードを探している可能性がある状況があります。このレコードが見つからない場合は、スレッドによって作成されます。残念ながら、両方のスレッドがこのレコードを見つけられないため、両方とも同じレコードを作成します。

4

1 に答える 1

2

Tレディ、

これを行う1つの方法は、キューに入れられたプライベートMOCを使用して、すべての作成を実行することです。必要に応じて、作成MOCを実行します。このようにして、希望するMOCからフェッチを実行できます。失敗した場合は、作成MOCでフェッチを再実行し、失敗した場合は作成します。この規律により、常に順番にテストを行い、重複した作成を行わないようにする必要があります。子MOC関係または「保存しました」マージ通知のいずれかを介して、MOC間の調整を管理する必要があります。

アンドリュー

于 2012-12-11T13:14:22.977 に答える