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

标签 memory-leaks garbage-collection web-audio-api

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

最佳答案

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

一般来说,除了 ScriptProcessors 之外,如果它没有产生噪音,并且您已经在代码中删除了对它的所有引用,那么它将被 GC 处理。

关于memory-leaks - 您是否需要断开所有音频节点以避免内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41348707/

相关文章:

mysql - 大量高频查询的nodejs mysql内存泄漏

javascript - mediarecorder api 通过 Web Audio api 播放(不是音频元素)

java - XPages:有人可以解释一下这些消息吗?

java - 为什么我遇到长时间的非 GC 相关应用程序暂停?

java - ZGC 垃圾回收器是否支持字符串去重?

javascript - 如果渲染器进程关闭, Electron 全局变量垃圾会被收集吗?

javascript - 使用周期时间调用 Audioparam 方法

javascript - 迭代不同大小的网格来播放康威生命游戏的音频

c# - C# 套接字应用程序中的内存泄漏

android - 防止Thread被垃圾回收,防止上下文泄露