iPhone SDK の新しい AVFoundation クラスで奇妙な動作が発生しています。
写真を撮るための AVCaptureStillImageOutput があり、その outputSettings を好みに合わせて設定しています。コードは次のとおりです。
AVCaptureStillImageOutput *stillImageOutput = [[[AVCaptureStillImageOutput alloc] init] autorelease];
[stillImageOutput setOutputSettings:[NSDictionary dictionaryWithObject:AVVideoCodecJPEG forKey:AVVideoCodecKey]];
[self setStillImageOutput:stillImageOutput];
(stillImageOutput プロパティは "retain" として定義されています)
私は、 setOutputSettings行に 100% のリーク障害があり、リークの中にあるリークに出くわしました。添付されたコードのメモリ管理ガイドラインに限定していると思いますが、それでもリークしています。
私の解決策は
[self.stillImageOutput setOutputSettings:nil];
直前に、dealloc で
[self setStillImageOutput:nil];
漏れは確かに止まりましたが、奇妙に見えます。stillImageOutputを解放すると、そのoutputSettingsプロパティも解放されるべきではありませんか?
とにかく、他の誰かがこれに遭遇した場合は、私の解決策を共有する必要があると思いました.
乾杯!
オデッド。