Skip to content

优先级机制

React的两套优先级: lane模型以及Schedule

lane模型的优先级: 交互 > 动画 > 数据加载 更多的关注于任务的优先级,而不是任务的执行时间;

Schedule的优先级: 任务的执行时间 更多的关注于任务的执行时间,而不是任务的优先级;它更关注任务的执行时间,而不是任务的优先级;

二者是互补的: lane负责优先级,调度器负责时间;

流程

  • React 根据交互类型确定更新优先级(Lane)
  • 将 Lane 转换为 Scheduler 优先级
  • Scheduler 根据优先级和当前帧时间决定任务执行时机
  • 浏览器渲染间隙执行任务(通过 requestIdleCallback 类似机制)

lane模型

31个二进制位,低位优先;

拥有批处理机制,优先级位段相近的任务会被合并;

优势:

  • 并发更新
  • 批量处理
本站访客数 人次 本站总访问量