Instruments が実行されていて、Activities Monitor が選択されている場合、iPhone 4S で実行されているアプリは、コンテキストが解放されている場合は 4.88MB を使用し、コンテキストが解放されていない場合も 4.88MB を使用するためです。つまり、コンテキストの解放はオプションですか? (実際には必要だと思いました)。コンテキストはCGContextRef
変数によって参照されました。(ARC が使用されています)。
コンテキストはCGBitmapContext
、Retina ディスプレイ用に作成されたので、約 640 x 640 で、4 つのコンテキストがあり、すべて で作成されviewDidAppear
ます。1 ピクセルが 4 バイトの場合、各コンテキストは既に 1.6MB になると思いました。完了後viewDidAppear
、コンテキストが自動的に解放された可能性はありますか? 基本的に、これらのビットマップ コンテキストからオブジェクトを生成し、 ( を使用して) オブジェクトCGImage
が指すように CGImage オブジェクトを設定したので、ビットマップ コンテキストは不要になりました。Xcode 4.3 と ARC を使用してコンパイルされ、iOS 4.3 を対象としています。(しかし、ARCの一部ではないと思いました)。CALayer
layer.contents = (__bridge id) cgImage;
CGContextRef
更新:修正:「CGBitmapContextからCGImageオブジェクトを生成し、CGImageオブジェクトをCALayerに設定する」(元の質問はそれを反映するように編集されています)。