有没有办法检查 NSManagedObject 是否被释放?

Is there a way to check whether NSManagedObject is freed or not?

当我使用 CoreData 时出现错误:

error for object 0x7fcadbb48b68: incorrect checksum for freed object - object was probably modified after being freed.

的确,我知道为什么...我从 NSFetchedResultsController 中删除了 tableView 中显示的对象。为避免这种情况,我需要检查它是否已释放,而不是将其删除。如何实现?

根据 Apple's documentation,您可以检查 'managedObjectContext' 是否存在。

if (YourNSManagedObject.managedObjectContext == nil) {
    NSLog(@"Hey I'm already freed, what are you doing with me. don't use me");
}