ループ内で新しいマネージド オブジェクトを作成して保存し、RAM フットプリントを削減するために、保存した直後にそれらをフォールトさせたいと考えています。
これは、管理対象オブジェクトを作成する方法です。
[objects enumerateObjectsUsingBlock:^(PFObject *obj, NSUInteger idx, BOOL *stop) {
@autoreleasepool {
ForexHistory *forexHistory = [NSEntityDescription insertNewObjectForEntityForName:localEntityName
inManagedObjectContext:backgroundContext];
forexHistory.date = obj[@"date"];
}
}];
NSError *saveError = nil;
[backgroundContext save:&saveError];
オブジェクトをフォールトするには、 を使用する必要があることを理解していますrefreshObjects:mergeChanges
。
挿入されたすべてのオブジェクトを反復処理してrefreshObjects:mergeChanges:NO
それぞれに送信するために再取得する必要がありますか、それともより良い方法がありますか?