App 线程优化
线程调度原理
- 任意时刻,只有一个线程占用CPU,处于运行状态
- 多线程并发:轮流获取CPU使用权
- JVM负责线程调度:按照特定机制分配CPU使用权
线程调度模型
- 分时调度模型:轮流获取、均分CPU时间
- 抢占式调度模型:优先级高的获取,JVM采用
Android线程调度
-
nice
值:Process中定义的,值越小,优先级越高,默认是THREAD_PRIORITY_DEFAULT
,值为0
-
cgroup
:更严格的群组调度策略,保证前台线程可以获取到更多的CPU。
注意点
- 线程过多会导致CPU频繁切换,降低线程运行效率
- 正确认识任务重要性决定哪种优先级
- 优先级具有继承性
Android异步方式汇总
异步方式 | 说明</ |
---|