Quartz2D内存管理

* 在C语言函数中,遇到了create或copy或retain!这些关键单词创建的对象,最后结束的时候,需要自己release!

* ARC -> 自动内存管理针对的是oc!

* 释放对象的方式! CGPathRelease()

静态分析工具: -> 从代码的结构上分析是否存在内存管理不当的问题! 快捷键:shift+cmd+b,菜单:product -> analyze,MRC下用的多一些。

 - (void)drawRect:(CGRect)rect {

     // 1.获取图形上下文
CGContextRef cxt = UIGraphicsGetCurrentContext(); // 2.给里面添加路径
// 创建路径!
CGMutablePathRef path = CGPathCreateMutable(); // -设置起点!
/**
参数1 路径
参数2 形变 -> NULL
参数3 和 参数4 起点的x,y值!
*/
CGPathMoveToPoint(path, NULL, , ); // -添加线!
CGPathAddLineToPoint(path, NULL, , ); // 给上下文中添加一条路径 CGPathRef类型路径!
CGContextAddPath(cxt, path); // 3.渲染
CGContextStrokePath(cxt); // 4.释放路径资源
CGPathRelease(path);
// 可以释放任何对象! 有时候也不给力!
// CFRelease(path); // kill();
// release(); }
上一篇:Objective-C内存管理之引用计数


下一篇:Swift中的可选链与内存管理(干货系列)