iOS高级面试题精讲
iOS 开发里的 RunLoop 机制,真的是个老生常谈但又绕不开的话题。这份《iOS 高级经典面试》文档,把RunLoop
讲得挺透,尤其是和线程的关系,还有各种模式的切换,看完你会明白,UI 不卡顿、线程不死掉,其实都离不开它。
RunLoop 的模式部分讲得细,比如UITrackingRunLoopMode
是怎么避免滑动被打断的,还有kCFRunLoopCommonModes
其实是个组合模式,不是真正的模式,这种小细节挺有意思的。
而且关于自动释放池的生命周期,文中也点得比较到位,比如 RunLoop 睡觉前会销毁旧的自动释放池,创建新的,这对理解内存释放节奏有。
后面还有对weak
和assign
的区别解释,嗯,虽然是常识,但面试真有问得刁钻,一眼扫过再巩固一下没坏处。
你要是自己封装对象,想支持copy
操作,也可以照着文中那一节,把NSCopying
的实现补上,直接上代码。
文末附了不少相关文章,像是线程保活和源码这种也都蛮有深度,感兴趣可以一起看下。
如果你最近在准备面试,或者正好在做跟多线程、内存打交道的开发,建议你抽空读一遍,内容偏高级,但不晦涩,关键是讲得挺接地气。
16.95MB
文件大小:
评论区