React 中的 Lanes

React 中有一个 Lane 的概念,Lane 就像高速路上的不同车道,具有不同优先级,在 React Lane 通过一个 32 位的二进制数来表示。越小优先级别越高,SyncLane 级别最高。用二进制存储的方式,可以通过逻辑操作快速判断 Lane 之间的关系。

Lane的操作方法

Lane之间的一些逻辑操作:
在这里插入图片描述

Lane 类型

在这里插入图片描述

通过 requestUpdateLane,获取本次更新的 Lane。

在这里插入图片描述

不同的 Lane 代表不同的任务,最终转换为 Schedule 的优先级

  • DiscreteEventPriority:最高优先级,用于即时用户交互(点击、按键)。
  • ContinuousEventPriority:高优先级,用于连续用户交互(滚动、鼠标移动)。
  • DefaultEventPriority:标准优先级,用于大多数更新(数据获取、非紧急状态变化)。
  • TransitionPriority:较低优先级,用于过渡相关的更新(动画、页面过渡)。
  • IdlePriority:最低优先级,用于空闲时间的非紧急更新(后台任务)。

在这里插入图片描述

PriorityLevel 最终转为 Timeout,作为任务优先级字段进行排序

在这里插入图片描述

总结

Lane 是 React 用来定义优先级的结构,通过 requestUpdateLane 进行获取,并最终转换为调度优先级。

相关推荐

  1. websocket request-line URI编码问题

    2024-06-13 23:06:03       40 阅读
  2. ReactuseCallback

    2024-06-13 23:06:03       21 阅读
  3. ReactReact setState执行机制

    2024-06-13 23:06:03       44 阅读
  4. ReactuseMemo钩子

    2024-06-13 23:06:03       56 阅读
  5. ReactuseSearchParams钩子

    2024-06-13 23:06:03       63 阅读
  6. reactdiff算法

    2024-06-13 23:06:03       54 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-13 23:06:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-13 23:06:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-06-13 23:06:03       82 阅读
  4. Python语言-面向对象

    2024-06-13 23:06:03       91 阅读

热门阅读

  1. C++学习(19)

    2024-06-13 23:06:03       34 阅读
  2. 802.11中的各种帧

    2024-06-13 23:06:03       37 阅读
  3. 雅可比矩阵奇异求解

    2024-06-13 23:06:03       35 阅读
  4. SDK version 2018.3 doesnt match hw_server version 2015.2

    2024-06-13 23:06:03       23 阅读
  5. 英伟达SSD视觉算法模型训练代码解析

    2024-06-13 23:06:03       27 阅读
  6. Stable Diffusion 3 开源发布可下载体验

    2024-06-13 23:06:03       40 阅读
  7. Python PDF转化wolrd代码怎么写

    2024-06-13 23:06:03       31 阅读
  8. 【React】在 React 组件中,怎么使用useContext

    2024-06-13 23:06:03       32 阅读
  9. Cohere reranker 一致的排序器

    2024-06-13 23:06:03       37 阅读
  10. C# —— 逻辑运算符

    2024-06-13 23:06:03       33 阅读