Avatar notebook default
16篇文章 · 16669字 · 1人关注
  • autoreleasePool总结

    先举个例子,下面这段代码是在非ARC环境下运行: 通过clang编译后的代码如下: 下面是__AtAutoreleasePool的声明: 结合上...

  • iOS线程同步方案总结

    demo: ThreadSynchronization 多线程技术使得执行任务的效率得到提升,但多线程也是一个易发生各种问题的编程技术。如数据竞...

  • weak总结

    系统创建了一个全局的哈希表SideTables,它使用对象的内存地址作key,值为SideTable结构体。SideTable维护对象的引用计数...

  • Runtime常用API

    Runtime API demo 类相关 动态创建一个类(参数:父类,类名,额为的内存空间) 注册一个类(成员变量要在类注册之前添加) 获取is...

  • OC消息发送机制

    OC的方法调用都是通过消息发送这种机制来实现的。当调用一个实例方法或者类方法时,底层实现是实例对象或者类对象调用objc_msgSend函数。先...

  • Class的结构及方法缓存

    从runtime源码中看到Class的结构如下 分别解释下几个字段 superclass:指向父类的指针 cache:调用过的方法缓存 bits...

  • isa总结

    在arm64架构之前,isa就是一个普通的指针,存储着Class或Meta-Class对象的内存地址。arm64架构之后对isa做了优化,isa...

  • Resize,w 360,h 240
    __block的实现

    __block的内存管理 当block使用外部变量时,是不能直接在block内修改这些变量的。我们用__block修饰变量后就能够修改了。但需要...

  • Block访问对象类型

    在上篇文章中有说到ARC环境下,编译器会根据情况自动将栈上的block拷贝到堆上,具体情况以下: block作为函数返回值时 将block赋值给...

文集作者