引用自本文:https://developers.google.com/web/updates/2018/06/audio-worklet-design-pattern
WebAssembly是AudioWorkletProcessor的完美伴侣。这两个特性的结合为网上音频处理带来了各种好处,但最大的两个好处是:( a)将现有的C/C++音频处理代码引入WebAudio生态系统;( b) 避免了JIT编译和音频处理代码中的垃圾收集的开销。
我想知道在这里使用WebAssembly的实际优势是什么。WebAssembly是否完全避免垃圾收集?这是否超过了WebAssembly与原生Javascript相比对性能的影响?
发布于 2018-11-01 21:18:17
WebAssembly是否完全避免垃圾收集?
正确,WebAssembly没有垃圾收集器。WebAssembly本身就是一个编译目标,这就是为什么目前将非垃圾收集的语言编译成WebAssembly最直接的原因,例如C/ C++、Rust、Go。
这是否超过了WebAssembly与原生Javascript相比对性能的影响?
不知道你在这里是什么意思?WebAssembly执行得更快、更可预测,加载速度也比它的JavaScript等效值更快。例如,请参见WebAssembly如何使源代码地图算法更快地接近x3:
WebAssembly特别适合算法代码--这就是为什么它对音频处理非常有用的原因。
https://stackoverflow.com/questions/53108371
复制相似问题