Notes

优先级队列

一句话结论:优先级队列让系统总能先处理“更重要/更紧急”的任务;浏览器与 React 调度器都会用它来保证交互优先、避免饥饿。

1. 什么是优先级队列

  • 取出元素时按“优先级”而不是按“先进先出”
  • 常见实现:二叉堆(min-heap/max-heap),插入/取最值通常是 O(log n)

2. 在事件循环里的直觉

  • 微任务通常比宏任务优先级更高(本轮结束前必须清空)
  • 浏览器内部还会按任务来源/类型拆成不同队列(用户输入、计时器、网络等)

3. 与 React 调度的关系

  • Scheduler 会把“带优先级/过期时间”的任务放入堆结构
  • React 用 Lane/优先级把更新分层,优先处理输入等高优先级更新

关联阅读

cd ..