foo
我在 NSManagedObject 子类中有一个对象 ivar bar
,只要该对象存在,我就需要一直在那里。
为了确保foo
正确创建,我将 awakeFromInsert 子类化为创建foo
时bar
创建。我在 awakeFromFetch 中做了同样的事情,以确保从商店中获取的时间foo
。bar
为了解决这个问题,我foo
在 willTurnIntoFault 和 prepareForDeletion 中释放。
然而,事实证明,当我删除时bar
,prepareForDeletion 和 willTurnIntoFault 都被调用,释放foo
两次。
我意识到我可能不能在 prepareForDeletion 中释放它,但我想知道这里的最佳实践是什么,所以我明白什么时候会变成错误等等。对于普通对象,我只是创建foo
在 init 中并在 dealloc 中销毁它。
谢谢!