WebAssembly 的流式特性允许浏览器在字节码尚未全部下载完成时就开始解码、校验和编译。WebAssembly.instantiateStreaming 接收一个返回字节流的响应,随着数据到达逐步处理,从而把网络传输与编译过程重叠,显著缩短首字节到可执行的时间。
由于解码、校验和编译被设计为可拆分为多个相互独立的并行任务,运行时能够充分利用多核资源并行处理模块的不同部分,进一步提升大型模块的加载速度。
流式加载对于体积较大的 WebAssembly 模块(如移植的游戏引擎、图像处理库、机器学习推理模块)收益尤为明显——用户无需等待整个二进制文件下载完毕,即可尽早开始执行,改善首屏和交互响应体验。