私は、たいていNSOperationQueueを使用してWebサービス経由でデータをアップロードするlaunchdデーモンを持っています。Webサービス経由でアイテムをディスクにアップロードする永続アイテム
このデータを永続化できるようにする必要があります。そのため、後で(たとえコンピュータがシャットダウンした場合など)セッション間であってもエラーが発生した場合に再アップロードできます。
これは負荷の高いアプリケーションではなく、間欠的に1分または1分ごとに間欠的にアイテムを受信します。間に数時間の間隔があることがよくあります。次のような場所では、この永続性のない
私の最初の実装は次のとおりです。
- デーモンは、データを受け取ります。
- デーモンは、データをMyDataObject型のオブジェクトに解析します。
- デーモンはアップロードするオブジェクトとしてMyDataObjectを使用してNSOperationサブクラスのインスタンスを作成し、NSOperationQueueに追加します。
- NSOperationQueueは、できるだけWebサービス経由でMyDataObjectをアップロードしてアップロードします。
この部分はすべて正常に機能します。私が今追加したい部分は、Webサービスの失敗、コンピュータのシャットダウンなどの場合の永続性です。
NSKeyed(Un)アーカイバと一緒にMyDataObjectsのNSMutableArrayを使用できるようですが、まだアップロードされておらず、配列から項目を削除するためのすべての操作の-isFinishedキーを観察していますが、より単純な方法が必要であるように思えます。安全は行く。
誰かが正しい方向に向けることができますか?