首屏直出(IFR) v0.5
首屏直出(Instant First-Frame Rendering,IFR)会在 Lynx loadTemplate 期间、后台线程启动之前绘制真实内容,去掉原先等待后台启动、首次 Vue 渲染和 IPC 造成的白屏。
本页是产品论点——怎么快、以及为什么是架构优势。代价账本、gzip/TTI、 代价空间图与 FCP 数字见 IFR 性能数据 · 统一矩阵。
1. 怎么实现快
没有 IFR 时,可见内容必须等后台线程:
开启 IFR 后,主线程 bundle 携带 Vue 运行时和应用。Vue 在 loadTemplate 内同步渲染,后台线程并行启动:
让这次同步绘制「够便宜、能上线」靠两层:
裸 IFR(无 ET)在主线程上仍接近整条 create 路径。所以 VDOM 默认 IFR + 元素模板 一起开——数字见 IFR 性能数据 的策略阶梯。
2. 为什么是架构优势
IFR 不是「任何 harness 里都更快的首帧」。它消掉的是真实线程边界造成的白屏。单进程 / 同 isolate 的 bench 会很平——没有可藏的 IPC 等待。在 Lynx for Web(以及 native 双线程)上,那段白屏是真的,所以 IFR 会体现为产品 FCP。
这也是为什么统一矩阵(Worker 边界)和 IFR 示例 harness 回答的是不同问题:一个量收益,一个量账单。
结论
开启
lynx.config.ts
策略阶梯、真实线程 FCP、代价空间、示例 gzip/TTI、native: IFR 性能数据 · 产品 FCP 矩阵: 统一矩阵。