Merhaba buradaCGContextDrawPDFPage hafıza
- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx
{
CGContextSetRGBFillColor(ctx, 1.0, 1.0, 1.0, 1.0);
CGContextFillRect(ctx, CGContextGetClipBoundingBox(ctx));
CGContextTranslateCTM(ctx, 0.0, layer.bounds.size.height);
CGContextScaleCTM(ctx, 1.0, -1.0);
CGContextConcatCTM(ctx, CGPDFPageGetDrawingTransform(myPageRef, kCGPDFCropBox, layer.bounds, 0, true));
CGContextDrawPDFPage(ctx, myPageRef);
}
Her şey yolunda CATiledlayer içinde pdf çizim benim kodudur sızıntı ama satırını
CGContextDrawPDFPage(ctx, myPageRef);
aşağıdaki bellek sızıntısı uyarı var bazı R & D github kodu indirip yapmak vardı ve bulunan bu
Ben
ve benim bellek sızıntısı çözüldü Bu kodu yazdıktan sonra
....// Clean up.
- (void)dealloc {
CGPDFPageRelease(myPageRef);
[super dealloc];
}
Yalnızca yapmalıyım bir noktada bunu muhafaza eğer. Ancak, sadece 'CGPDFDocumentGetPage' yapıyorsanız, bir otomatikleştirme nesnesi alırsınız ve bu nedenle onu serbest bırakmamalısınız. (Tabii ki, eğer onu korursanız, tabii ki bu cevapta önerildiği şekilde onu serbest bırakabilirsiniz). – Rob
https://stackoverflow.com/questions/46903182/cgcontextdrawpdfpage-memory-leak-app-crash – Ravindhiran