Hola aquí es mi código para trazar pdf en CATiledlayermemoria CGContextDrawPDFPage fugas
- (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);
}
Todo está bien pero me dio la advertencia pérdida de memoria en línea siguiente
CGContextDrawPDFPage(ctx, myPageRef);
Aquí myPageRef es CGPDFPageRef
Sólo debe hacerlo si lo retuvo en algún momento. Pero si solo estás haciendo 'CGPDFDocumentGetPage', obtienes un objeto de liberación automática y, por lo tanto, no deberías lanzarlo. (Obviamente, si lo retuvo, entonces, por supuesto, debe liberarlo como se sugiere en esta respuesta). – Rob
https://stackoverflow.com/questions/46903182/cgcontextdrawpdfpage-memory-leak-app-crash – Ravindhiran