私は Core Data も RestKit も初めてです。
いくつかのパフォーマンスの問題があるため、ios5 で同時実行技術を使用したいと考えています。しかし、RestKitと組み合わせるとクラッシュする問題が発生。ここに私のクラッシュコードがあります:
[[RKObjectManager sharedManager] getObjectsAtPath: HOT_PATH
parameters: params
success:
^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
NSManagedObjectContext *newContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
newContext.parentContext = [self managedContext];
[newContext performBlock:^{
Rumor *rumorInOtherContext = (Rumor *)[mappingResult.array lastObject];;
Rumor *rumor = (Rumor *)[newContext objectWithID:rumorInOtherContext.objectID];
rumor.updateDate = [NSDate date]; // <- crash at this point.
}];
ただし、私のコードの古いバージョンはクラッシュしません。
[[RKObjectManager sharedManager] getObjectsAtPath: HOT_PATH
parameters: params
success:
^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
Rumor *rumor = (Rumor *)[mappingResult.array lastObject];;
rumor.updateDate = [NSDate date]; // <- save!
}];
コンソール ダイアログにクラッシュ レポートが表示されませんでした。:(
私のコードは正しいですか?または、同じことを行う別のアプローチはありますか?