1 @class
@class ClassName,仅仅告诉编辑器ClassName是一个类
避免循环拷贝
在.h中使用@class声明
在.m文件中import头文件
2 循环引用问题
2.1 定义:
指两个对象互相retain对方,通过release是无法销毁这两个对象
2.2 描述:
比如在main函数中创建了两个类的对象A和B,现在引用计数都是1。...
                            
                            
                                分类:
移动开发   时间:
2015-01-29 17:42:56   
                                阅读次数:
180
                             
                         
                    
                        
                            
                            
                                如何区分垃圾上面说到的“引用计数”法,通过统计控制生成对象和删除对象时的引用数来判断。垃圾回收程序收集计数为0的对象即可。但是这种方法无法解决循环引用。所以,后来实现的垃圾判断算法中,都是从程序运行的根节点出发,遍历整个对象引用,查找存活的对象。那么在这种方式的实现中,垃圾回收从哪儿开始的呢?即,从...
                            
                            
                                分类:
编程语言   时间:
2015-01-26 16:35:07   
                                阅读次数:
157
                             
                         
                    
                        
                            
                            
                                什么是循环引用简单来说,循环引用就是:A 保留了 B, B 保留了 A, 造成 A 和 B 都不能被释放。id 为什么是 assign 而不是 retain从文章标题大概也能猜到, id 是 assign 而不是 retain 的原因是跟你循环引用有关系了。原因也确实如此。id 之所以是 assig...
                            
                            
                                分类:
其他好文   时间:
2015-01-24 17:16:33   
                                阅读次数:
173
                             
                         
                    
                        
                            
                            
                                有限状态机简称FSM,现在我们创建一个专门的FSM类,负责管理对象(Monkey)的状态。然后Monkey类就实现了行为与状态分离。Monkey类只负责自己的行为,MonkeyFSM作为Monkey的成员,负责状态调度。MonkeyFSM调用状态模式类的方法,状态模式类调用真实对象Monkey的方法。注意本文例子代码只是为了说明问题,并不能真正用于实际当中。其中Monkey与MonkeyFSM互相保存对方的指针,存在循环引用问题。...
                            
                            
                                分类:
其他好文   时间:
2015-01-22 18:22:03   
                                阅读次数:
258
                             
                         
                    
                        
                            
                            
                                一、 jQuery数据缓存的作用jQuery数据缓存的作用在中文API中是这样描述的:“用于在一个元素上存取数据而避免了循环引用的风险”。如何理解这句话呢,看看我下面的举例,不知道合不合适,如果你有更好的例子可以告诉我。(1) 存在循环引用风险的例子(注意getDataByName(name)方法中...
                            
                            
                                分类:
Web程序   时间:
2015-01-21 19:39:34   
                                阅读次数:
216
                             
                         
                    
                        
                            
                            
                                很久没写技术贴了,这两天被spring的循环引用搞死了,发文记之。前几天,项目结构做了调整,把我所在的项目代码嵌入另一个项目,然后就杯具了,症状如下:Bean with name ‘xxxService’ has been injected into other beans [xxxService]...
                            
                            
                                分类:
编程语言   时间:
2015-01-20 17:16:54   
                                阅读次数:
279
                             
                         
                    
                        
                            
                            
                                A.需求真机调试"关于”模块存储开关状态打电话、发短信应用评分打开其他应用cell 在iOS6 和 iOS7的适配block的循环引用屏幕适配code source: code source: https://github.com/hellovoidworld/HelloLotteryB.iOS真机...
                            
                            
                                分类:
移动开发   时间:
2015-01-10 00:59:29   
                                阅读次数:
387
                             
                         
                    
                        
                            
                            
                                因为Android中很多地方代码是用C++编写,为了能够保证C++中指针能够被正确的释放,于是Android引入了其实在C++中已经有的智能指针技术;智能指针技术的实质就是:记录引用某一个对象的次数,一旦检测到次数为0,这时就自定将此对象所占内存释放。简单的的智能指针技术因为不能解决对象循环引用的问...
                            
                            
                                分类:
移动开发   时间:
2015-01-08 00:44:46   
                                阅读次数:
390
                             
                         
                    
                        
                            
                            
                                我们知道在Block使用中,Block内部能够读取外部局部变量的值。但我们需要改变这个变量的值时,我们需要给它附加上__block修饰符。__block另外一个比较多的使用场景是,为了避免某些情况下Block循环引用的问题,我们也可以给相应对象加上__block 修饰符。为什么不使用__block就...
                            
                            
                                分类:
其他好文   时间:
2015-01-06 13:23:18   
                                阅读次数:
268
                             
                         
                    
                        
                            
                            
                                在前一篇文章中我们说到了如何解决对象的循环引用问题,这一篇文章我们就来介绍一下OC中的对象拷贝概念,这个对于面向对象语言中都会有这种的问题,只是不同的语言有不同的解决方式:C++中有拷贝构造函数,Java中需要实现Cloneable接口,在clone方法中进行操作。但是不过OC更偏向于Java这种方...
                            
                            
                                分类:
其他好文   时间:
2015-01-03 15:49:19   
                                阅读次数:
189