MagicalRecord - saveinBackground 不持久化数据?
Posted
技术标签:
【中文标题】MagicalRecord - saveinBackground 不持久化数据?【英文标题】:MagicalRecord -- saveinBackground not persisting data? 【发布时间】:2012-09-13 15:53:16 【问题描述】:我无法理解 [[NSManagedObjectContext defaultContext] save]
和 [[NSManagedObjectContext defaultContext] saveInBackground]
之间的区别。
当我使用save
功能时,它工作得很好,但saveInBackground
从不保留数据。简而言之,这就是区别:
// Save in background.. DOES NOT WORK
[[NSManagedObjectContext defaultContext] saveInBackgroundErrorHandler:^(NSError *error)
NSLog(@"FAILED TO SAVE!! Task: %@", task);
completion:^(void)
NSLog(@"PERSISTED NEW TASK: %@", task);
];
// Save in main thread.. WORKS
[[NSManagedObjectContext defaultContext] save];
每次saveInBackground
运行时,我都会看到“PERSISTED NEW TASK”日志条目。但是,当我重新启动应用程序时,数据不存在。当我使用save
时,我重新启动应用程序并且数据就在那里。我错过了什么?
【问题讨论】:
【参考方案1】:必须打电话给[context saveNestedContexts]
【讨论】:
以上是关于MagicalRecord - saveinBackground 不持久化数据?的主要内容,如果未能解决你的问题,请参考以下文章
未找到 MagicalRecord/MagicalRecordDeprecationMacros.h 文件