AFNetworking实际上使用了两个缓存机制:AFImageCache和NSURLCache. 一.AFImageCache协议定义了一组API,用于同步添加,删除和从缓...
1.Retain的实现机制。 2.Release的实现机制。 二者的实现机制类似,概括讲就是通过第一层 hash 算法,找到 指针变量 所对应的 sideTable。然后再通...
小编接到领导任务,写h5移动端活动页面,点击页面内容调取ios和Android开发自己写的分享功能(包括微信、微信朋友圈、QQ、QQ空间等),包括用户未登录,让其登录后才能分...
App启动后,苹果在主线程 RunLoop 里注册了两个 Observer,其回调都是 _wrapRunLoopWithAutoreleasePoolHandler()。 第...
@dynamic 意味着编译器不会帮助我们自动合成 setter 和 getter 方法。我们需要手动实现、这里就涉及到 Runtime 的动态添加方法的知识点。 转自:ht...
深拷贝内存拷贝 浅拷贝指针拷贝 浅拷贝 深拷贝 集合的浅复制 (shallow copy) 集合的浅复制有非常多种方法。当你进行浅复制时,会向原始的集合发送retain消息,...
栈区(stack):由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 堆区(heap):一般由程序员分配释放, 若程序员不释放,程...
MRC @property (atomic,readWrite,retain) UIView *view; ARC @property (atomic,readWrite,s...
悬垂指针 指针指向的内存已经被释放了,但是指针还存在,这就是一个 悬垂指针 或者说 迷途指针 野指针 没有进行初始化的指针,其实都是 野指针 转自:https://githu...
会 ,为了延长返回对象的生命周期,给其他使用者留足调用的时间 转自:https://github.com/liberalisman/iOS-InterviewQuestion...
主要是指 weak 关键字。weak 修饰的变量能够在引用计数为0 时被自动设置成 nil,显然是有运行时逻辑在工作的。 为了保证向后兼容性,ARC 在运行时检测到类函数中的...
根据代码执行的上下文语境,在适当的位置插入 retain,release 转自:https://github.com/liberalisman/iOS-InterviewQu...
Strong Strong 修饰符表示指向并持有该对象,其修饰对象的引用计数会加1。该对象只要引用计数不为0就不会被销毁。当然可以通过将变量强制赋值 nil 来进行销毁。 W...
用的弱引用 - weak表。也是一张 哈希表。 被 weak 修饰的指针变量所指向的地址是 key ,所有指向这块内存地址的指针会被添加在一个数组里,这个数组是 Value。...
weak 修饰的指针变量,在指向的内存地址销毁后,会在 Runtime 的机制下,自动置为 nil。 _Unsafe_Unretain不会置为 nil,容易出现 悬垂指针,发...
简单说是双向链表,每张链表头尾相接,有 parent、child指针 每创建一个池子,会在首部创建一个 哨兵 对象,作为标记 最外层池子的顶端会有一个next指针。当链表容量...