这玩意儿已经在前面的文章里多次提到,但一直没深入,这一篇就来研究研究。 runtime提供的和associated object有关的接口有3个...
上一篇最后讲release的时候说到,在release的最后,当引用计数减为0的时候就进入了dealloc的过程。这一篇就来讲讲dealloc和...
retain/release两个关键字现在已经很少见了,但了解一下底层的实现还是能帮助我们更深刻的理解oc的内存管理。 retain 通常情况下...
因为现在普遍使用ARC,所以项目中几乎看不到release这样的字眼了,但是在一个不起眼的地方 —— main.m,有一个@autoreleas...
关于category的文章太多了,有介绍用法的,也有介绍源码的。流传较广的应该算是美团那篇深入理解Objective-C:Category。 原...
我原本以为这两个东西没啥好写的,结果是property确实没啥好写的,但是ivar就不少了。 本文不探讨何时该选择property,何时该选择i...
之前已经讲过方法加载的全过程,protocol的加载过程与method是一样的,就不再赘述了。不清楚的可以参考Runtime源码 —— 方法加载...
在写这篇文章之前,我关于方法调用的知识是比较零散的,甚至一度以为消息转发就是方法调用的过程。现有的文章大多根据苹果的官方文档Runtime Pr...
在上一篇文章中分析过类的结构体,是这个样子的: 那一篇主要是分析isa的源码,这些字段并没有深究,这一篇就来深入研究一下。我还是会先对源码进行分...
文集作者