iOS アプリに Obj-C コードがあります。
CGImageRef cgImage = CGImageRetain([self imageFromSampleBuffer:sampleBuffer]);
if(_delegate) {
[_delegate sessionWithPresentedFrame:[UIImage imageWithCGImage:cgImage]];
}
CGImageRelease( cgImage );
このコードはブログからコピーしましたが、メモリ管理について少し理解する必要があります (現在は理解していません)。だから誰かが私を助けてくれることを願っています。
今、cgImage
明らかに保持されています。次に、 に渡され[_delegate sessionWithPresentedFrame:]
ます。
その後cgImage
、リリースされます。cgImage
私の質問は、ここでリリースすることが安全かどうかです。に渡しているので[_delegate sessionWithPresentedFrame:]
、ここで解放すると、内部で使用されているときに殺されます[_delegate sessionWithPresentedFrame:]
か?
hereを削除して、で使用されCGImageRelease( cgImage );
た後に追加する必要がありますか?cgImage
[_delegate sessionWithPresentedFrame:]
それとも私はこれを逆に持っていますか?
アドバイスをいただければ幸いです。