ARC所做的事情并不仅仅局限于在编译期找到合适的位置帮你插入合适的release这样的内存管理方法;ARC在运行期也做了一些优化: 比如在某些情...
简介 __autoreleasing 是 ARC 下用于控制变量生命周期而引入的变量限定符,用__autoreleasing修饰的指针所指向的对...
先来看下Apple官方的DEMO: 自定义一个可变参数的方法 va_list & va_start & va_arg & va_end...
先抛出来一些问题Category中可以不通过关联来添加属性吗?Category是如何被加载的?父类的load方法会先于子类调用、如何实现的 ?在...
阅读本篇文章需要有一定的runloop基础、runloop的基础认知还请先自行搜索 RunLoop运行流程 代码运行过程中、runloop的状态...
什么是异步绘制?在子线程中绘制需要显示的内容、不占用主线程资源以防绘制的过程中阻塞主线程。对UIView来说即绘制其layer.contents...
如果访问用 __weak 修饰符的变量,那么其引用的对象会被加入到autoreleasepool ?如果大量地使用__weak修饰符的变量,注册...
首先抛出来一些问题 block{}内部会捕捉哪些类型的变量 ?block{}内部是怎样捕获变量的?整个copy的流程是怎样实现的 ?block{...
先说结论 如果用assign修饰OC对象,当OC对象被释放后指针并没有被置为nil,也就是说指针还是指向之前的某一块内存,也就造成了野指针。 代...