案例演示并发模式
一句话结论:并发特性不是“更快”,而是“更不容易卡”;典型场景是“输入是高优先级,列表渲染是低优先级”。
1. 典型 Demo 结构
- 输入框:每次输入触发 state 更新(用户期望立刻响应)
- 大列表:根据输入过滤并渲染(可能很重)
2. 非并发下的体验
- 输入与列表更新同一优先级 → 每次输入都要等列表算完/渲染完
- 结果:输入延迟、光标卡顿
3. 并发下的做法(React 18)
- 把“列表更新”包在
startTransition/useTransition中 - React 会把它标记为较低优先级(Transition Lane),让输入优先完成
4. 面试表达要点
- 解释“高优先级插队 + render 可中断 + commit 原子性”
- 强调:并发是调度策略,不是多线程同时渲染 DOM