240 发简信
IP属地:北京
  • 大神,主线程的runloop是在main函数中调用UIApplicationMain函数自动开启的,而主线程对应的自动释放池是在线程和runloop开启前创建的,而子线程中是将自动释放池放到子线程的调度方法中,也就是说主线程和子线程,它们的线程和自动释放池的创建顺序是不一样的,可以这么理解么?
    另外,自动释放池在runloop进入休眠和退出时会释放,这里指的释放,是指向自动释放池中所有的对象发送一次release消息来释放,还是连自动释放池本身也被释放销毁了?主线程和子线程都是这样么?

    iOS底层原理总结 - RunLoop

    面试题 讲讲 RunLoop,项目中有用到吗? RunLoop内部实现逻辑? Runloop和线程的关系? timer 与 Runloop 的关系? 程序中添加每3秒响应一次...

  • 大神,我有几个问题想请教一下,在文章中,可以理解为实例对象存储了isa指针和实例变量。isa指针指向类对象。
    1、实例对象存储的实例变量是存储的实例变量的值对吧?如果存储的是值,那么实例对象是如何找到这个实例变量的值的呢?是通过地址找的,还是地址偏移量来找的?
    2、实例对象存放在堆上,那么类对象存放在哪里呢?是在代码区么?
    3、如果实例对象有一个NSString的实例变量,并且将@"abc"常量字符串赋值给它,那么这个实例变量是跟实例对象一起存储在堆上,还是单独存放在全局区呢?

    iOS底层原理总结 - 探寻OC对象的本质

    iOS底层原理总结 - 探寻OC对象的本质 对小码哥底层班视频学习的总结与记录。面试题部分,通过对面试题的分析探索问题的本质内容。 面试题:一个NSObject对象占用多少内...