1、什么是ARC? ARC(Automatic Reference Counting )自动应用计数器,代码自动添加的release/retain,原先是需要手动添加的用来处理内存管理的应用计数的代码可以自动的由编译器完成了。ARC是为解决内存管理而诞生的。 2、assign 和 weak,_blo
分类:
移动开发 时间:
2016-02-19 18:38:01
阅读次数:
304
atomic和nonatomic用来决定编译器生成的getter和setter是否为原子操作。 atomic 设置成员变量的@property属性时,默认为atomic,提供多线程安全。 在多线程环境下,原子操作是必要的,否则有可能引起错误的结果。加了atomic,setter函数会变成下面这样:
分类:
其他好文 时间:
2016-02-19 14:24:45
阅读次数:
155
ARC: 由于自己的学习视频太早,Xcode是iOS6版本,新建命令行项目后,系统会默认启动ARC机制,全程Automatic Reference Counting,简单的说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译器完成了
分类:
其他好文 时间:
2016-02-18 11:36:44
阅读次数:
191
创建一个工程之后改成MRC分4步 1、创建完空模板之后,修改环境为MRC 2、将AppDelegate.h文件中的strong改为retain 3、在AppDelegate.m文件中重写dealloc方法将实例变量_window释放一次 4、在创建的window对象的最后加autorelease,完
分类:
其他好文 时间:
2016-02-17 00:44:57
阅读次数:
216
假如使用alloc、new开头或者包含copy函数的方法来创建一个对象,你就拥有了这个对象的所有权。(假如新对象的retain计数为1,并且不在自动释放池里,那么,你就有义务在不用这个对象的时候释放它)。传递对象所有权一些常见的方法是alloc(也经常会跟着init方法),copy和mutableC
分类:
其他好文 时间:
2016-02-16 10:00:12
阅读次数:
169
I Writing ARC code 1. Don’t call Retain, release, autorelease dealloc, unless you need to release CF objects or remove observers, remove [super deallo
分类:
其他好文 时间:
2016-01-31 03:05:46
阅读次数:
144
@interface MyTableViewCell : UITableViewCell @property (nonatomic, retain) UIImageView *headerImageView; @property (nonatomic, retain) UILabel *titleL
分类:
其他好文 时间:
2016-01-30 17:56:31
阅读次数:
239
@property内存管理策略的选择1.非ARC1> copy : 只用于NSString\block2> retain : 除NSString\block以外的OC对象3> assign : 基本数据类型、枚举、结构体(非OC对象),当2个对象相互引用,一端用retain,一端用assign2.A
分类:
其他好文 时间:
2016-01-30 02:30:28
阅读次数:
174
一、weak和strong 1.理解 刚开始学UI的时候,对于weak和strong的描述看得最多的就是“由ARC引入,weak相当于OC中的assign,但是weak用于修饰对象,但是他们都不会造成引用计数加1;而strong则相当于OC中规定retain,它会造成引用计数加1”。 ARC的原理:
分类:
移动开发 时间:
2016-01-29 20:15:25
阅读次数:
338
碰到这种类似[xx retain]: message sent to deallocated instance,问题。 使用方法(Command + Shift + B)分析内存泄露已经不能满足需要。 使用Instruments的Leaks工具,检测app运行过程中的内存泄露问题,能为你节省不少的开
分类:
移动开发 时间:
2016-01-27 18:52:25
阅读次数:
219