1、完整的消息发送、到方法查找再到消息转发流程
2、main函数之前的过程
3、数据源同步
4、UI事件传递和响应链
5、UI绘制原理
6、离屏渲染、掉帧现象
7、如何优化UI?
8、Category、Category和Extention的区别
9、Category如何添加属性?原理是什么?
10、Category如何添加实例变量?
11、KVO实现原理
12、KVC查找流程。valueForKeyPath:可以做什么?
13、id和NSObject区别。
14、内存布局。TaggedPointer是什么?有什么作用?NONPONITER_ISA是什么?
15、retain、release内部如何实现的?
16、关联对象是如何实现的?dealloc的时候需要释放关联对象吗?为什么?
17、weak对象如何实现?dealloc的时候需要释放weak对象吗?为什么?
18、什么是autoreleasepool?为什么它可以嵌套(实现原理是什么)?什么场景下需要使用autoreleasepool?
19、什么是Runloop?Runloop事件循环流程是什么?如何防止NSTimer产生的内存泄漏?
20、UIApplicationMain做了什么?
21、__block关键字有什么作用?如何实现的?如何防止循环引用?什么情况下可以不使用__block还可以更改外部的值?
22、Block在哪个内存区域?
23、iOS有哪些多线程技术?NSOperation和GCD有哪些区别?
24、iOS中有哪些锁?OSSpinLock在什么场景使用?
网友评论