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