
内存管理
文章平均质量分 66
小毛毛笑哈哈
孤独的iOS玩家~
展开
-
深拷贝、浅拷贝
转载:http://www.cocoachina.com/ios/20160803/17275.html 深拷贝、浅拷贝一:浅copy是指针拷贝,深copy是内容拷贝二:retain属性表示拷贝一个指针,指向同一个对象(内存地址),内容当然相同,这个对象的retain值+1. copy属性表示生成一个全新对象,该对象retain为1,原对象没有改变,两个对象...原创 2017-12-01 11:52:52 · 371 阅读 · 0 评论 -
copy、strong、weak、assign
assign:用于对基本数据类型进行赋值操作,不更改引用计数。 之所以可以修饰基本数据类型,因为基本数据类型一般分配在栈上,栈的内存会由系统自动处理,不会造成野指针。 weak:修饰Object类型,修饰的对象在释放后,指针地址会被置为nil,是一种弱引用。 在ARC环境下,为避免循环引用,往往会把delegate属性用weak修饰;MRC下使用assign修饰。 wea原创 2017-12-01 14:54:13 · 258 阅读 · 0 评论 -
iOS 代理为啥要用weak修饰
内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。assgin和weak的区别:assgin 在引用计数=0 的时候,不会自动置为nil . weak 会自动置为nil,所以代理用weak合适,需要释放strong引用计数+1,weak关键字修饰的对象,对象的引用计数不会...转载 2019-07-24 15:55:26 · 605 阅读 · 0 评论 -
内存泄漏检查及原因分析-Instruments
https://www.cnblogs.com/mukekeheart/p/8144742.html原创 2019-08-05 11:39:44 · 510 阅读 · 0 评论