面试题简答
2020-11-21 本文已影响0人
你飞跃俊杰
一、AFN和ASI的区别
ASI用cookies 保存在本地,不安全
AFN用session 保存服务器,相对安全
互坼锁,回到主线程
二、NSRunloop的五大类
一个线程至少有一个runloop
main的默认开启,子线程的默认关闭
1.RunloopRep
底层C的runloop
2.Model 相当于进程的状态
Default默认模式,Tracking用户交互模式,Common伪模式model集合,initialtialzation启动模式,eventRecei接受内部事件模式
3.Timer
等价于NSTimer
刷新有三种:GCD,NSTimer,CADisaplaytime
4.Observer 监听线程状态
监听七种状态1.即将进入runloop 2.即将处理timer 3.即将处理source 4.即将sleep 5.刚被唤醒,即将退出sleep.6.即将退出exit 7.全部活动all activity
5.Source 0 互坼锁,1自旋锁
Timer失效:1. Runloop 没有开启,2.runloop被释放了
Timer无法释放:重写调用方法,用虚类来引用父类进行消息转发
三、block
堆(有外部参数
栈(__block 将block拷贝到栈
全局 其他
循环引用:weak
被释放:strong
四、离屏渲染:
内存管理:
多线程:
线程锁:lock,@sythasy,