Article / 2026/05/31

性能优化 (十四) android线程调度原理剖析

性能优化 (十四) android线程调度原理剖析 的技术笔记。

android线程调度原理剖析

线程调度原理

  • 任意的时刻,只有一个线程占用cpu,处于运行状态
  • 多线程并发:轮流获取cup的使用权
  • jvm负责线程调度:按照特定的机制分配cpu使用权

线程调度模型

  • 分时调度模型:轮流获取、均分cpu时间
  • 抢占式调度模型:优先级高的获取,jvm采用

android线程调度

  • nice值
  1. process中定义
  2. 值越小,优先级越高
  3. 默认是THREAD_PRIORITY_DEFAULT,0
  • cgroup
  1. 更严格的群组调度策略
  2. 保证前台线程可以获取到更多的cpu

注意点

  1. 线程过多会导致cpu频繁切换,降低线程运行效率
  2. 正确认识任务重要性决定哪种优先级
  3. 优先级具有继承性

Giscus 未启用:请在 src/site.config.ts 中配置 repoId 与 categoryId。