停止它之后,我需要断开一个振荡器AudioNode吗?

问题描述:

我曾在几篇教程中看到在振荡器节点中使用.disconnect()之后的.stop()停止它之后,我需要断开一个振荡器AudioNode吗?

据我所知,振荡器节点是一次性的,所以当它停止并被扔掉时,它是不是也会断开连接?

我理解错了什么?为什么在.stop()之后需要使用.disconnect()

按照W3C Specification

当AudioNode没有引用将被删除。在删除 之前,它将自己与其连接到的任何其他音频节点断开连接。

所以当AudioNode得到停止,任何引用,离开它就会断开其本身,并因此不需要它显式调用disconnect()stop()后。

停止()后,您不需要断开振荡器。实际上,在安排好振荡器的启动和停止时间之后,您应该能够立即降低振荡器的参考值,并且振荡器仍应该继续播放。停止后,它应该自动断开连接。

当然,执行中可能存在一些错误,导致断开正确的事情。但这是一个错误。