扫码关注官方订阅号
如题。
比如我创建一个CGImageRef。用完了我要释放,免得内存升高,我应该用哪个?
CGImageRef imageRef = [asset.defaultRepresentation fullScreenImage];
业精于勤,荒于嬉;行成于思,毁于随。
release是计数器-1,,retain是+1 用完不需要的时候需要release
release
retain
1)首先对照下你在使用CGImageRelease之前是否调用过CGImageCreate,CGImageCreateCopy 或者是CGImageRetain。。 2)如果没有会Crash吧。。。 资产类的话主动调这个对减少内存使用似乎没啥用。。。
CGImageRelease
CGImageCreate
CGImageCreateCopy
CGImageRetain
虽然现在有了ARC,还是需要了解一下MRC
如果你需要释放内存,当然调用CGImageRelease,CGImageRelease是让引用计数-1,当引用计数为0的时候,系统就会释放回收内存。与此相对应的是retain +1。虽然现在ARC用得比较多,内存管理这块楼主还是需要去了解学习下。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
release是计数器-1,,retain是+1用完不需要的时候需要
release1)首先对照下你在使用
CGImageRelease之前是否调用过CGImageCreate,CGImageCreateCopy或者是CGImageRetain。。2)如果没有会Crash吧。。。
资产类的话主动调这个对减少内存使用似乎没啥用。。。
虽然现在有了ARC,还是需要了解一下MRC
如果你需要释放内存,当然调用CGImageRelease,CGImageRelease是让引用计数-1,当引用计数为0的时候,系统就会释放回收内存。与此相对应的是retain +1。虽然现在ARC用得比较多,内存管理这块楼主还是需要去了解学习下。