Quartz2D内存管理
2024-08-25 11:12:34
* 在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(); }
最新文章
- ASP.NET Core 中文文档 第四章 MVC(3.6.2 )自定义标签辅助类(Tag Helpers)
- 重温WCF之消息拦截与篡改(八)
- MVC Actionlink 参数说明
- Asp.net mvc中的Ajax处理
- java--- Map详解
- c++工程vs导入工程时发生LNK1207
- 磁珠 磁环 双向二极管 TVS二极管
- Compiler options do not specify -mv64+, but configuration is for C64x+
- 解决iphone safari上的圆角问题
- ios block循环引用问题
- linux添加swap
- 【Unity优化】构建一个拒绝GC的List
- (一)《Maven实战》读书笔记 —— Maven简介
- Useful command for Docker
- 解决 .NET Core 在 Linux 下的时区问题
- [LeetCode&;Python] Problem 458. Poor Pigs
- ubuntu 安装CUDA 8.0
- 第5月第24天 线性变换 opengl
- luoguP2572 [SCOI2010]序列操作
- 实现返回top功能