fooNSManagedObjectサブクラス内にオブジェクトivarbarがあり、オブジェクトが存在する限り、常にそこに存在する必要があります。
が正しく作成されることを確認するために、作成時に作成するようにfooawakeFromInsertをサブクラス化しました。ストアからフェッチされたときに確実に存在するように、awakeFromFetchでも同じことを行いました。foobarfoobar
これに対抗するために、foowillTurnIntoFault内とprepareForDeletionでリリースします。
ただし、deleteを実行するbarと、prepareForDeletionとwillTurnIntoFaultの両方が呼び出され、foo2回解放されることがわかりました。
おそらくprepareForDeletionでリリースできないことはわかっていますが、ここでのベストプラクティスを知りたいので、何かが障害になったことなどを理解しています。通常のオブジェクトの場合は、作成するだけです。fooinitで、deallocで破棄します。
ありがとう!