CloudKitを使用してカウンタを実装したいと思います。例えばcount
というフィールドがInt(64)
というフィールドがあるとします。このカウンタを実装して、複数のユーザーが同時にカウントアップできるようにするにはどうすればよいですか?CloudKitで「原子インクリメント」
複数のユーザーが同時にこのカウンタをインクリメントすると、競合のために私のCKModifyRecordsOperation
が失敗することがあります。私はこの失敗を抱え、再帰的に私の記録を保存しようとすることができましたが、これは大規模には機能しません。
2011年、Parseは原子増分という簡単なソリューションを発表しました。このようなコードを書くことができ、矛盾する値を作成する複数のユーザーについて心配する必要はありません:[gameScore incrementKey:@"score" byAmount:[NSNumber numberWithInt:10]
。 (その投稿here)
CloudKitでどうすればいいですか?
私はこのためのよりエレガントなバックエンドのソリューションが存在することになることを期待していたが、これは可能な限り効率的として再保存プロセスを支援ありません。ありがとうございました。 –