您是否需要断开所有音频节点以避免内存泄漏?

Do you need to disconnect all audio nodes to avoid memory leaks?

假设我有一个带有特定音频图的音频上下文。如果我想用新节点创建一个完全不同的音频图,我是否必须在我以前的音频图的每个节点上调用 disconnect 以避免内存泄漏,或者它们会自动收集垃圾?如果是,他们将在什么情况下获得 GC?

一般来说,您不需要断开每个节点;您 do 需要断开与任何 ScriptProcessorNodes 的任何连接,并确保您没有任何不会停止播放的源节点(例如振荡器或循环缓冲源)仍然连接到一个输出。

一般来说,除了 ScriptProcessors,如果它没有发出噪音并且您在代码中删除了对它的所有引用,它就会被 GC。